]> git.baikalelectronics.ru Git - kernel.git/commit
drm/vboxvideo: Add missing remove_conflicting_pci_framebuffers call, v2
authorHans de Goede <hdegoede@redhat.com>
Wed, 25 Mar 2020 14:43:10 +0000 (15:43 +0100)
committerHans de Goede <hdegoede@redhat.com>
Thu, 26 Mar 2020 16:03:03 +0000 (17:03 +0100)
commite00a72f159df3edc58ea21007ea2dc4ccd9b9e8b
tree57dc66f08740e2eaf0c436be212b85c40d97341f
parentddbf51f5a4bf2bcdd7e41c907f8d931d220fbcad
drm/vboxvideo: Add missing remove_conflicting_pci_framebuffers call, v2

The vboxvideo driver is missing a call to remove conflicting framebuffers.

Surprisingly, when using legacy BIOS booting this does not really cause
any issues. But when using UEFI to boot the VM then plymouth will draw
on both the efifb /dev/fb0 and /dev/drm/card0 (which has registered
/dev/fb1 as fbdev emulation).

VirtualBox will actual display the output of both devices (I guess it is
showing whatever was drawn last), this causes weird artifacts because of
pitch issues in the efifb when the VM window is not sized at 1024x768
(the window will resize to its last size once the vboxvideo driver loads,
changing the pitch).

Adding the missing drm_fb_helper_remove_conflicting_pci_framebuffers()
call fixes this.

Changes in v2:
-Make the drm_fb_helper_remove_conflicting_pci_framebuffers() call one of
 the first things we do in our probe() method

Cc: stable@vger.kernel.org
Fixes: fdc0ec47b692 ("drm/vboxvideo: Switch to generic fbdev emulation")
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Link: https://patchwork.freedesktop.org/patch/msgid/20200325144310.36779-1-hdegoede@redhat.com
drivers/gpu/drm/vboxvideo/vbox_drv.c