Shortly after I said my VM was running fine with freshly installed drivers so that this bug could be closed, it started freezing up again. I followed your plan to git bisect between v9.0.0 and v9.1.0.

For each iteration of the bisection, I did:
- buile the executable
(make clean; ../configure --prefix=/usr/ --target-list=x86_64-softmmu --disable-tools; ninja qemu-system-x86_64)

- started the VM using virt-manager (to make libvirt use the compiled
  qemu-system-x86_64, run 'sudo virsh edit [VM-NAME]' and set the
  <emulator> variable to the path to the executable and save the new
  configuration; note that the executable must already exist when you
  edit the domain);  Video display is set to QXL

- logged in and started firefox (just to give it something to do)

- waited a few minutes then tried to start something else, usually a
  File Explorer instance. If the UI froze, 'git bisect bad', otherwise
  'git bisect good'

After about 10 iterations, I got this:

4bba839808bb1c4f500a11462220a687b4d9ab25 is the first bad commit
commit 4bba839808bb1c4f500a11462220a687b4d9ab25
Author: Akihiko Odaki <akihiko.od...@daynix.com>
Date:   Mon Jul 15 14:25:45 2024 +0900

    ui/console: Remove dpy_cursor_define_supported()

    Remove dpy_cursor_define_supported() as it brings no benefit today and
    it has a few inherent problems.

    All graphical displays except egl-headless support cursor composition
    without DMA-BUF, and egl-headless is meant to be used in conjunction
    with another graphical display, so dpy_cursor_define_supported()
    always returns true and meaningless.

    Even if we add a new display without cursor composition in the future,
    dpy_cursor_define_supported() will be problematic as a cursor display
    fix for it because some display devices like virtio-gpu cannot tell the
    lack of cursor composition capability to the guest and are unable to
    utilize the value the function returns. Therefore, all non-headless
    graphical displays must actually implement cursor composition for
    correct cursor display.

    Another problem with dpy_cursor_define_supported() is that it returns
    true even if only some of the display listeners support cursor
    composition, which is wrong unless all display listeners that lack
    cursor composition is headless.

    Reviewed-by: Marc-André Lureau <marcandre.lur...@redhat.com>
    Reviewed-by: Phil Dennis-Jordan <p...@philjordan.eu>
    Signed-off-by: Akihiko Odaki <akihiko.od...@daynix.com>
    Message-ID: <20240715-cursor-v3-4-afa5b9492...@daynix.com>
    Signed-off-by: Philippe Mathieu-Daudé <phi...@linaro.org>

 hw/display/qxl-render.c |  4 ----
 hw/display/vmware_vga.c |  6 ++----
 include/ui/console.h    |  1 -
 ui/console.c            | 13 -------------
 4 files changed, 2 insertions(+), 22 deletions(-)

 I'm hoping this tells you something useful. I would be very happy to  do any testing you need.

 Hank

On Tue, 8 Oct 2024 08:38:43 +0300 Michael Tokarev <m...@tls.msk.ru> wrote:

> 08.10.2024 04:26, Hank Knox wrote:
> > I found a fix!
> >
> > I looked a little more carefully at the bug report you referenced and saw something about updated virtio drivers so I downloaded and mounted > > virtio-win-0.1.262.iso as a CD on the Windows VM, fired it up, installed virtio-win-x64.msi and virio-win-guest-tools.exe, closed Windows, set the > > Video to QXL, restarted Windows, and voilà, it works just fine. So the problem isn't with QEMU but with out-of-date or overwritten Windows drivers.
> > You can close this bug now.
>
> Oh wow! :)
>
> Well. Somehow checking for the drivers is the very first step to do for me. > Not even the first, it is a "pre-debugging" step, like a step zero, it occurs > automatically before doing anything else. So I assumed you obviously did that
> step zero and didn't dare to ask :)
>
> Congratulations! :)
>
> And I think now you see how interesting things might turn, and you don't have
> any reasons to be jealous anymore ;)
>
> > Thanks for all your help with this. Maybe another time we'll get to bisect a git repo together...
>
> You're welcome.
>
> Thanks,
>
> /mjt
>
>

--
Hank Knox, FRSC
Schulich School of Music of
McGill University (retired)
Montreal, QC

Reply via email to