On 1/27/25 19:17, Alex Bennée wrote:
...
> I'm still seeing corruption with -display gtk,gl=on on my x86 system
> BTW. I would like to understand if that is a problem with QEMU, GTK or
> something else in the stack before we merge.

I reproduced the display mirroring/corruption issue and bisected it to
the following commit. The problem only happens when QEMU/GTK uses
Wayland display directly, while previously I was running QEMU with
XWayland that doesn't have the problem. Why this change breaks dmabuf
displaying with Wayland/GTK is unclear. Reverting commit fixes the bug.

+Dongwon Kim +Vivek Kasireddy

commit 77bf310084dad38b3a2badf01766c659056f1cf2
Author: Dongwon Kim <dongwon....@intel.com>
Date:   Fri Apr 26 15:50:59 2024 -0700

    ui/gtk: Draw guest frame at refresh cycle

    Draw routine needs to be manually invoked in the next refresh
    if there is a scanout blob from the guest. This is to prevent
    a situation where there is a scheduled draw event but it won't
    happen bacause the window is currently in inactive state
    (minimized or tabified). If draw is not done for a long time,
    gl_block timeout and/or fence timeout (on the guest) will happen
    eventually.

    v2: Use gd_gl_area_draw(vc) in gtk-gl-area.c

    Suggested-by: Vivek Kasireddy <vivek.kasire...@intel.com>
    Cc: Gerd Hoffmann <kra...@redhat.com>
    Cc: Marc-André Lureau <marcandre.lur...@redhat.com>
    Cc: Daniel P. Berrangé <berra...@redhat.com>
    Signed-off-by: Dongwon Kim <dongwon....@intel.com>
    Acked-by: Marc-André Lureau <marcandre.lur...@redhat.com>
    Message-Id: <20240426225059.3871283-1-dongwon....@intel.com>

-- 
Best regards,
Dmitry

Reply via email to