qemu-stable
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH for 8.2] ui/gtk-egl: move function calls back to regular code


From: Marc-André Lureau
Subject: Re: [PATCH for 8.2] ui/gtk-egl: move function calls back to regular code path
Date: Mon, 13 Nov 2023 12:26:12 +0400

Hi

On Sat, Nov 11, 2023 at 2:40 PM Volker Rümelin <vr_qemu@t-online.de> wrote:
>
> Commit 6f189a08c1 ("ui/gtk-egl: Check EGLSurface before doing
> scanout") introduced a regression when QEMU is running with a
> virtio-gpu-gl-device on a host under X11. After the guest has
> initialized the virtio-gpu-gl-device, the guest screen only
> shows "Display output is not active.".
>
> Commit 6f189a08c1 moved all function calls in
> gd_egl_scanout_texture() to a code path which is only called
> once after gd_egl_init() succeeds in gd_egl_scanout_texture().
> Move all function calls in gd_egl_scanout_texture() back to
> the regular code path so they get always called if one of the
> gd_egl_init() calls was successful.
>
> Fixes: 6f189a08c1 ("ui/gtk-egl: Check EGLSurface before doing scanout")
> Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>

Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>

> ---
>  ui/gtk-egl.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/ui/gtk-egl.c b/ui/gtk-egl.c
> index cd2f176502..3af5ac5bcf 100644
> --- a/ui/gtk-egl.c
> +++ b/ui/gtk-egl.c
> @@ -249,14 +249,14 @@ void gd_egl_scanout_texture(DisplayChangeListener *dcl,
>          if (!vc->gfx.esurface) {
>              return;
>          }
> +    }
>
> -        eglMakeCurrent(qemu_egl_display, vc->gfx.esurface,
> -                       vc->gfx.esurface, vc->gfx.ectx);
> +    eglMakeCurrent(qemu_egl_display, vc->gfx.esurface,
> +                   vc->gfx.esurface, vc->gfx.ectx);
>
> -        gtk_egl_set_scanout_mode(vc, true);
> -        egl_fb_setup_for_tex(&vc->gfx.guest_fb, backing_width, 
> backing_height,
> -                             backing_id, false);
> -    }
> +    gtk_egl_set_scanout_mode(vc, true);
> +    egl_fb_setup_for_tex(&vc->gfx.guest_fb, backing_width, backing_height,
> +                         backing_id, false);
>  }
>
>  void gd_egl_scanout_dmabuf(DisplayChangeListener *dcl,
> --
> 2.35.3
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]