Hi
On Mon, Mar 7, 2022 at 10:00 PM Kasireddy, Vivek
<[email protected]> wrote:
>
> Hi Marc-Andre,
>
> >
> > Hi Vivek
> >
> > On Mon, Mar 7, 2022 at 8:39 AM Vivek Kasireddy
> > <[email protected]> wrote:
> > >
> > > Since not all listeners (i.e VirtualConsoles) of GL events have
> > > a valid EGL context, make sure that there is a valid context
> > > before making EGL calls.
> > >
> > > This fixes the following crash seen while launching the VM with
> > > "-device virtio-gpu-pci,max_outputs=1,blob=true -display gtk,gl=on"
> > >
> > > No provider of eglCreateImageKHR found. Requires one of:
> > > EGL_KHR_image
> > > EGL_KHR_image_base
> > >
> > > Fixes: 7cc712e9862ff ("ui: dispatch GL events to all listeners")
> >
> > I am not able to reproduce on current master.
> [Kasireddy, Vivek] I can still see it with current master. I think this issue
> is only seen when running Qemu in an Xorg based Host environment and
> cannot be reproduced in a Wayland based environment -- as Qemu UI
> uses the GLArea widget in the Wayland case where the EGL context
> is managed by GTK.
>
> >
> > Isn't it fixed with commit a9fbce5e9 ("ui/console: fix crash when
> > using gl context with non-gl listeners") ?
> [Kasireddy, Vivek] No, it unfortunately does not fix the issue I am seeing. In
> my case, there are three VirtualConsoles created ("parallel0",
> "compatmonitor0",
> "virtio-gpu-pci") and all three of them seem to have a valid
> dpy_gl_scanout_dmabuf()
> but only virtio-gpu-pci has a valid EGL context.
>
> >
> > Could you also check after "[PATCH v3 00/12] GL & D-Bus display related
> > fixes" ?
> [Kasireddy, Vivek] I can check but I don't think this issue can be fixed in
> ui/console.c
> as all three VirtualConsoles pass the console_has_gl() check and one of the
> only things
> that distinguishes them is whether they have a valid EGL context.
>
Under X11, I get the same error on v6.2.0 and master:
qemu-system-x86_64 -m 4G -object
memory-backend-memfd,id=mem,size=4G,share=on -machine
q35,accel=kvm,memory-backend=mem -device
virtio-gpu-pci,max_outputs=1,blob=true -display gtk,gl=on -cdrom
rawhide.iso
No provider of eglCreateImageKHR found. Requires one of:
EGL_KHR_image
EGL_KHR_image_base
Note that with virtio-gpu-gl-pci I get:
qemu-system-x86_64: ../src/dispatch_common.c:868:
epoxy_get_proc_address: Assertion `0 && "Couldn't find current GLX or
EGL context.\n"' failed.