[Bug 196777] Virtual guest using video device QXL does not reach GDM
bugzilla-daemon at bugzilla.kernel.org
bugzilla-daemon at bugzilla.kernel.org
Mon Oct 2 16:24:38 UTC 2017
https://bugzilla.kernel.org/show_bug.cgi?id=196777
--- Comment #12 from Justin M. Forbes (jmforbes at linuxtx.org) ---
(In reply to Gerd Hoffmann from comment #11)
> (In reply to Justin M. Forbes from comment #10)
> > After going through these with a number of users:
> >
> > qxl: fix primary surface handling - This patch is widely reported to cause
> > serious screen flickering that is not there without it, making the system
> > unusable.
>
> Workaround #1: turn off wayland.
Possible as a short term fix, but with wayland being pretty much "the way
forward" it doesn't seem to be a workable long term solution.
> Workaround #2: use virtio-vga instead. wayland doesn't use qxl 2d accel
> anyway.
>
> Fundamental problem here is that the qxl virtual hardware simply doesn't
> support pageflip, we have to destroy + re-create the primary surface
> instead. This is where the flicker comes from.
>
> Commit "058e9f5c82 drm/qxl: simple crtc page flipping emulated using buffer
> copy" handles the issue with a pretty gross hack, blitting one framebuffer
> over the other instead of a proper primary surface update. With atomic
> modesetting that doesn't work any more.
>
> We could possibly decouple the primary surface from the drm framebuffers, so
> the drm framebuffers effectively become shadow framebuffers, and every
> display update becomes a drm framebuffer -> primary surface blit. Not sure
> whenever that scheme can work properly with xorg though. Also has a high
> chance to cause xorg performance regressions.
>
So this brings up an interesting problem in how things are to move forward. It
came up as a blocker in Fedora 27 today. Let's say we find a way to force boxes
to revert to virtio-vga. That wouldn't change any existing VMs, and it is
something we have no control over when the host is not Fedora as well. It also
would be a problem for non wayland guests.
--
You are receiving this mail because:
You are watching the assignee of the bug.
More information about the dri-devel
mailing list