Message ID | 20250206225304.1739418-1-dongwon.kim@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ui/gtk-gl-area: Remove extra draw call in refresh | expand |
dongwon.kim@intel.com writes: > From: Dongwon Kim <dongwon.kim@intel.com> > > This partially reverts commit 77bf310084dad38b3a2badf01766c659056f1cf2 > which causes some guest display corruption when gtk-gl-area > is used for GTK rendering (e.g. Wayland Compositor) possibly due to > simulataneous accesses on the guest frame buffer by host compositor > and the guest. > > Reported-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> > Reported-by: Alex Bennée <alex.bennee@linaro.org> > Cc: Marc-André Lureau <marcandre.lureau@redhat.com> > Cc: Vivek Kasireddy <vivek.kasireddy@intel.com> > Signed-off-by: Dongwon Kim <dongwon.kim@intel.com> This certainly fixes the corruption I was seeing while testing Dimitry's native context patches and doesn't seem to affect the venus test modes. So: Tested-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> > --- > ui/gtk-gl-area.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/ui/gtk-gl-area.c b/ui/gtk-gl-area.c > index 2c9a0db425..9f7dc697f2 100644 > --- a/ui/gtk-gl-area.c > +++ b/ui/gtk-gl-area.c > @@ -129,7 +129,6 @@ void gd_gl_area_refresh(DisplayChangeListener *dcl) > > if (vc->gfx.guest_fb.dmabuf && > qemu_dmabuf_get_draw_submitted(vc->gfx.guest_fb.dmabuf)) { > - gd_gl_area_draw(vc); > return; > }
On 2/14/25 17:06, Alex Bennée wrote: > dongwon.kim@intel.com writes: > >> From: Dongwon Kim <dongwon.kim@intel.com> >> >> This partially reverts commit 77bf310084dad38b3a2badf01766c659056f1cf2 >> which causes some guest display corruption when gtk-gl-area >> is used for GTK rendering (e.g. Wayland Compositor) possibly due to >> simulataneous accesses on the guest frame buffer by host compositor >> and the guest. >> >> Reported-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> >> Reported-by: Alex Bennée <alex.bennee@linaro.org> >> Cc: Marc-André Lureau <marcandre.lureau@redhat.com> >> Cc: Vivek Kasireddy <vivek.kasireddy@intel.com> >> Signed-off-by: Dongwon Kim <dongwon.kim@intel.com> > > This certainly fixes the corruption I was seeing while testing Dimitry's > native context patches and doesn't seem to affect the venus test modes. > > So: > > Tested-by: Alex Bennée <alex.bennee@linaro.org> > Reviewed-by: Alex Bennée <alex.bennee@linaro.org> > >> --- >> ui/gtk-gl-area.c | 1 - >> 1 file changed, 1 deletion(-) >> >> diff --git a/ui/gtk-gl-area.c b/ui/gtk-gl-area.c >> index 2c9a0db425..9f7dc697f2 100644 >> --- a/ui/gtk-gl-area.c >> +++ b/ui/gtk-gl-area.c >> @@ -129,7 +129,6 @@ void gd_gl_area_refresh(DisplayChangeListener *dcl) >> >> if (vc->gfx.guest_fb.dmabuf && >> qemu_dmabuf_get_draw_submitted(vc->gfx.guest_fb.dmabuf)) { >> - gd_gl_area_draw(vc); >> return; >> } > Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
On 2/14/25 18:26, Dmitry Osipenko wrote: > On 2/14/25 17:06, Alex Bennée wrote: >> dongwon.kim@intel.com writes: >> >>> From: Dongwon Kim <dongwon.kim@intel.com> >>> >>> This partially reverts commit 77bf310084dad38b3a2badf01766c659056f1cf2 >>> which causes some guest display corruption when gtk-gl-area >>> is used for GTK rendering (e.g. Wayland Compositor) possibly due to >>> simulataneous accesses on the guest frame buffer by host compositor >>> and the guest. >>> >>> Reported-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> >>> Reported-by: Alex Bennée <alex.bennee@linaro.org> >>> Cc: Marc-André Lureau <marcandre.lureau@redhat.com> >>> Cc: Vivek Kasireddy <vivek.kasireddy@intel.com> >>> Signed-off-by: Dongwon Kim <dongwon.kim@intel.com> >> >> This certainly fixes the corruption I was seeing while testing Dimitry's >> native context patches and doesn't seem to affect the venus test modes. >> >> So: >> >> Tested-by: Alex Bennée <alex.bennee@linaro.org> >> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> >> >>> --- >>> ui/gtk-gl-area.c | 1 - >>> 1 file changed, 1 deletion(-) >>> >>> diff --git a/ui/gtk-gl-area.c b/ui/gtk-gl-area.c >>> index 2c9a0db425..9f7dc697f2 100644 >>> --- a/ui/gtk-gl-area.c >>> +++ b/ui/gtk-gl-area.c >>> @@ -129,7 +129,6 @@ void gd_gl_area_refresh(DisplayChangeListener *dcl) >>> >>> if (vc->gfx.guest_fb.dmabuf && >>> qemu_dmabuf_get_draw_submitted(vc->gfx.guest_fb.dmabuf)) { >>> - gd_gl_area_draw(vc); >>> return; >>> } >> > > Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> > Tested-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> I now noticed that the fixes tag is missing in the commit message. It should be added as described in [1]. Also, use the get_maintainers.pl script to CC all interested people. Submitting patches to QEMU works same like in Linux kernel. [1] https://www.qemu.org/docs/master/devel/submitting-a-patch.html
diff --git a/ui/gtk-gl-area.c b/ui/gtk-gl-area.c index 2c9a0db425..9f7dc697f2 100644 --- a/ui/gtk-gl-area.c +++ b/ui/gtk-gl-area.c @@ -129,7 +129,6 @@ void gd_gl_area_refresh(DisplayChangeListener *dcl) if (vc->gfx.guest_fb.dmabuf && qemu_dmabuf_get_draw_submitted(vc->gfx.guest_fb.dmabuf)) { - gd_gl_area_draw(vc); return; }