-
Notifications
You must be signed in to change notification settings - Fork 5
Description
Select the version
25.1.X
Describe your issue
When running XLibre inside a QEMU/KVM virtual machine, attempting to change the display resolution using xrandr causes the X server to terminate immediately and the graphical session exits back to the TTY.
The issue occurs regardless of the selected virtual GPU model or whether 3D acceleration is enabled or disabled.
If the resolution remains at the default value provided at session start (1280×800), the display functions normally.
Environment
Guest OS:
Gentoo Linux x86_64
Kernel: 6.18.12-gentoo
Packages: ~861
Shell: zsh 5.9
Virtualization:
QEMU/KVM
Machine type: Q35
Display protocol: SPICE
Host CPU: Intel i5-6300U (host-passthrough)
Guest hardware presented to VM:
GPU: RedHat Virtio GPU
Display: Virtual-1
Resolution (default): 1280x800
XLibre pkg:
[ebuild R ~] x11-base/xlibre-server-25.1.2:0/25.1.2::xlibre USE="elogind glx glx-dri udev xinerama xorg -debug -minimal -seatd (-selinux) -suid -systemd -test -unwind -xcsecurity -xephyr -xfbdev -xnest -xvfb*" 0 KiB
VM configuration is attached (qemu-machine-setup.log).
Upstream X server issue created here: X11Libre/xserver#2107
Steps to reproduce
Reproduction Steps
-
Boot the virtual machine.
-
Start XLibre normally.
-
Run:
xrandr --output Virtual-1 --mode 1920x1080
Observed Behaviour
The X server terminates immediately and the graphical session exits back to the TTY.
Client output from xrandr:
X connection to :0 broken (explicit kill or server shutdown).
What did you expect?
Expected Behaviour
The resolution should change normally via the RandR interface without terminating the X server.
xrandr Output
Example display modes reported:
Screen 0: minimum 320 x 200, current 1280 x 800, maximum 8192 x 8192
Virtual-1 connected primary 1280x800+0+0
1280x800 74.99*
1920x1080 60.00
3840x2160 60.00
4096x2160 50.00
5120x2160 50.00
...
Full verbose output is attached.
GPU / Video Model Testing
The behaviour was tested across multiple QEMU virtual GPU models:
| Video Model | Result |
|---|---|
| Virtio GPU (3D disabled) | X server crashes when resolution is changed |
| Virtio GPU (3D enabled) | Same behaviour |
| QXL | Same behaviour |
| Bochs | Same behaviour |
| Ramfb | Same behaviour |
| VGA | XLibre does not start (only works until GRUB) |
Therefore the issue does not appear to be tied to a specific virtual GPU implementation.
Additional Information
Additional Notes
-
The display functions normally as long as the resolution is not changed.
-
The issue occurs for any resolution change, not a specific mode.
-
Kernel and DRM logs show no obvious GPU driver failure preceding the X server exit.
Attached Logs
The following logs are attached for investigation:
loaded-modules.log
system.log
vm-gpu-info.log
qemu-machine-setup.log
xlibre-full.log
xlibre-errors.log
xlibre-last-session.log
xlibre-last-ext-session.log
xlibre-dmesg.log
xlibre-gpu-dmesg.log
xrandr-output.log
xrandr-verbose.log
xrandr-crash-session.log
xrandr-modset-crash-session.log
Notes for Maintainers
The issue appears to occur during RandR mode switching. The xrandr client loses its connection because the X server exits rather than returning a mode configuration error.
loaded-modules.log
qemu-machine-setup.log
system.log
vm-gpu-info.log
xlibre-dmesg.log
xlibre-driver.log
xlibre-errors.log
xlibre-full.log
xlibre-gpu-dmesg.log
xlibre-last-ext-session.log
xlibre-last-session.log
xrandr-crash-session.log
xrandr-modset-crash-session.log
xrandr-output.log
xrandr-verbose.log
Extra fields
- I have checked the existing issues
- I have read the Contributing Guidelines
- I'd like to work on this issue