FS#64209 - [qemu-hw-display-qxl] chrashes vm in graphical.target

Attached to Project: Arch Linux
Opened by Lutz (lula) - Monday, 21 October 2019, 21:58 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Wednesday, 19 October 2022, 23:00 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Tobias Powalowski (tpowa)
Jan Alexander Steffens (heftig)
Anatol Pomozov (anatolik)
Architecture x86_64
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 7
Private No

Details

Description:

I've tried to set up an arch guest with qemu/kvm on an arch host. In the guest i installed xf86-video-qxl, spice, and spice-vdagent packages and it works as long as i run the machine only in multi-user.target. If i start a dm (tried lightdm and sddm) it sometimes crashes the machine in dm, sometimes it worked, but starting a de (xfce4) always crashes the machine. Then i tried the git driver from the aur and it worked. I've bisected the source back to the 0.1.5 commit and the all worked with the aur build script. So i rebuilt the official package and it was crashing again. I removed the export LDFLAGS=${LDFLAGS/,-z,now} line from the PKGBUILD and it worked. There's at least another user with problems with that driver, i've started a thread in the forum:
https://bbs.archlinux.org/viewtopic.php?id=249778 whith
https://bbs.archlinux.org/viewtopic.php?pid=1867735#p1867735 being the most relevant

Additional info:
* package version(s)
xf86-video-qxl 0.1.5-7
spice 0.14.2-1
spice-vdagent 0.19.0-2

This task depends upon

Closed by  Sven-Hendrik Haase (Svenstaro)
Wednesday, 19 October 2022, 23:00 GMT
Reason for closing:  Fixed
Comment by Jan de Groot (JGC) - Tuesday, 22 October 2019, 10:40 GMT
Removing the LDFLAGS makes the driver fail to load. So when you remove the flags and your machine doesn't crash, the VM is not using the qxl driver but something else (modesetting probably). Check your Xorg logs, it will indicate that.
Comment by Lutz (lula) - Tuesday, 22 October 2019, 22:44 GMT
You're right, i've not noticed that, it's using the modesetting driver. Do you have any advice how to determine what's going wrong if i use the official package? Any information i can provide?
Comment by Lutz (lula) - Wednesday, 23 October 2019, 21:48 GMT
So i went back to the start and installed the official qxl driver from the repository and deinstalled spice-vdagent package to isolate the problem, ssh'ed to the VM and started lightdm.service. After a few seconds, the display broke, Xorg.0.log.old attached
Comment by Lutz (lula) - Wednesday, 23 October 2019, 21:49 GMT
journalctl-b from that boot
Comment by Jan de Groot (JGC) - Thursday, 24 October 2019, 09:50 GMT
qxl driver is from 2016, git contains some important fixes, so the package needs an update.

Copying the LDFLAGS/CFLAGS things from the community PKGBUILD into the AUR PKGBUILD should produce a working package. Could you test a git build instead?
Comment by Lutz (lula) - Thursday, 24 October 2019, 19:03 GMT
Copying the LDFLAGS/CFLAGS to the AUR PKGBUILD gives a kind of working package, but whith some errors.

1. There are a lot of messages "qxl_surface_create: Bad bpp: 1 (1)" in Xorg.0.log after the start of xfce4
2. Stopping the lightdm.service leaves an unusable display
3. Clean shutdown of VM isn't always possible
4. Sometimes the VM crashes completely (journalctl-b-1.txt)
Comment by Henrik Hudson (rhavenn) - Monday, 02 March 2020, 23:49 GMT
Add another Xorg.0.log to the mix. I'm using Arch on both ends of the connection. The crashing Arch is running a KDE desktop on Proxmox so I can connect to a work VPN. Spice lets me connect to the "monitor" since the VPN is a closed tunnel and multi-NIC or split-tunnel is not allowed.

I'd live to run Spice multi-monitor.
Comment by Giancarlo Razzolini (grazzolini) - Monday, 01 June 2020, 11:59 GMT
There were some changes on kernel >= 5.6.8 that made using qxl on Arch guests a very bad experience. I had been using qxl for years on a daily basis before that without issues. It seems to me that the qxl driver is somewhat abandoned. I've noticed a few commits to git, but it hasn't seen a release in more than 4 years. I started working on a PKGBUILD to build from git, and I've tested it on a guest, but it didn't improve the situation much, so I didn't change the package. Since then I've switched to using intel gvt-g.
Comment by David Runge (dvzrv) - Monday, 02 May 2022, 15:46 GMT
@lula: Is this still an issue with qemu >= 7.0.0 (currently in [testing])?
Comment by Sven-Hendrik Haase (Svenstaro) - Wednesday, 19 October 2022, 22:49 GMT
I can confirm that the original problem is sadly still around.
Comment by Sven-Hendrik Haase (Svenstaro) - Wednesday, 19 October 2022, 22:59 GMT
Alright, I updated the package and now it's working for me in xf86-video-qxl-0.1.5.r23.g52e9752.

Loading...