Mouse cursor is flipped / inverted / upside-down with virtio-gpu in some Wayland compositors
Host environment
- Operating system: Arch Linux
- OS/kernel version: 6.8.1 / 6.6.14 / older
- Architecture: x86_64
- QEMU flavor: qemu-system-x86_64
- QEMU version: 9.0.0 / 8.2.2 / older
- QEMU command line:
#!/bin/bash -e
# shellcheck disable=SC2054
args=(
-name "ArchKDE"
-machine q35
-cpu host -smp 8
-m 4G
-usb -device usb-tablet
-chardev socket,id=char1,abstract=on,path=virtiofs-archkde
-device vhost-user-fs-pci,queue-size=1024,chardev=char1,tag=root
-kernel /run/ssd/archkde-rootfs/boot/vmlinuz-linux-lily
-append 'rootfstype=virtiofs root=root rw'
-initrd /run/ssd/archkde-rootfs/boot/initramfs-linux-lily.img
-device virtio-vga-gl,max_hostmem=2G
-display gtk,gl=on
-object memory-backend-file,id=mem,size=4G,mem-path=/dev/shm,share=on -numa node,memdev=mem
)
exec qemu-system-x86_64 -enable-kvm "${args[@]}" "$@"
This script uses a virtiofs but it also happens with a regular qcow2 file (I just don't have one at hand).
This happens with both the GTK UI and SPICE (using the spicy binary).
Emulated/Virtualized environment
- Operating system: Arch Linux
- OS/kernel version: 6.8.1
- Architecture: x86_64
- Wayland compositor: wlroots-based / kwin 6.0.4.1
Description of problem
The mouse cursor is flipped:
Steps to reproduce
- Install a Linux system with a 6.8.x kernel inside the virtual machine
- Install sway / wayfire / hyprland, or kwin 6.0.4.1
- See the mouse cursor
Additional information
The kwin fix just makes use of dumb buffers instead of dmabuf.
The mouse cursor should be pointing to the maximizing button at the top-right corner:
Edited by 依云