Bug 1093310
| Summary: | fails to resize primary surface | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Evgheni Dereveanchin <ederevea> | ||||||||||
| Component: | xorg-x11-drv-qxl | Assignee: | Søren Sandmann Pedersen <sandmann> | ||||||||||
| Status: | CLOSED DUPLICATE | QA Contact: | Desktop QE <desktop-qa-list> | ||||||||||
| Severity: | unspecified | Docs Contact: | |||||||||||
| Priority: | unspecified | ||||||||||||
| Version: | 6.5 | CC: | acathrow, cfergeau, ederevea, kem, marcandre.lureau, sandmann, yeylon | ||||||||||
| Target Milestone: | pre-dev-freeze | ||||||||||||
| Target Release: | --- | ||||||||||||
| Hardware: | Unspecified | ||||||||||||
| OS: | Unspecified | ||||||||||||
| Whiteboard: | |||||||||||||
| Fixed In Version: | Doc Type: | Bug Fix | |||||||||||
| Doc Text: | Story Points: | --- | |||||||||||
| Clone Of: | Environment: | ||||||||||||
| Last Closed: | 2014-05-20 18:15:35 UTC | Type: | Bug | ||||||||||
| Regression: | --- | Mount Type: | --- | ||||||||||
| Documentation: | --- | CRM: | |||||||||||
| Verified Versions: | Category: | --- | |||||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||||
| Embargoed: | |||||||||||||
| Attachments: |
|
||||||||||||
|
Description
Evgheni Dereveanchin
2014-05-01 10:46:27 UTC
What happen when you go from window mode to fullscreen? or when you maximize the window? Is it correctly display in portrait mode then? Created attachment 891538 [details]
RHEL VM with dual monitors
Screenshot displaying how RHEL looks with a dual-monitor configuration and the screen resolution that is detected by the guest.
Created attachment 891540 [details]
Windows VM with dual monitors
Screenshot displaying how Windows 7 looks with a dual-monitor configuration and the correct screen resolution which is detected by the guest.
I reproduced the issue, and it seems to only affect RHEL. A Windows 7 guest that I tested works fine. Please check out the attached screenshots. My setup is as follows: * A computer running Win 8 x64 * Primary monitor - 1680x1050 (16:10 landscape) * Secondary monitor - 1080x1920 (9:16 portrait) * IE10 * virt-viewer 0.5.618.el6_5 * VM with RHEL 6.5 and latest qxl drivers * VM with Windows 7 and spice drivers When a Windows 7 guest with two SPICE displays is accessed on the Win8 client, it works OK When a RHEL 6.5 guest with two SPICE displays is accessed, the secondary display does not stretch to the full height. I also noticed, that if I make the primary display of the VM smaller, I am able to expand the secondary to 1080x1920. However then the primary one does not resize. Seems as if only one display is allowed to bee 1000+ pixels in height. What additional information can I provide from this test system? (In reply to Evgheni Dereveanchin from comment #5) > When a RHEL 6.5 guest with two SPICE displays is accessed, the secondary > display does not stretch to the full height. > > I also noticed, that if I make the primary display of the VM smaller, I am > able to expand the secondary to 1080x1920. However then the primary one does > not resize. Seems as if only one display is allowed to bee 1000+ pixels in > height. > > What additional information can I provide from this test system? most probably this is a x11 qxl driver or qxl memory configuration issue. What is the xorg-x11-drv-qxl version in the guest? Created attachment 891733 [details]
RHEL VM with dual monitors on RHEL client
Screenshot displaying how RHEL looks with a dual-monitor configuration and the screen resolution that is detected by the guest. It is being run on a RHEL6.5 client this time.
Marc-Andre, here's the guest info in my case. It's an up-to-date RHEL6.5 machine: $ uname -a $ rpm -qa | grep -e qxl -e spice xorg-x11-drv-qxl-0.1.0-7.el6.x86_64 spice-vdagent-0.14.0-3.el6_5.x86_64 I performed some more tests, this time using a RHEL client. I can reproduce it there too: Primary 1680x1050 + Secondary 1920x1080 = Works Primary 1680x1050 + Secondary 1080x1920 = Does not work (screenshot attached) This indeed looks like an issue in the qxl driver itself. Which logs can I provide from the VM to move this forward? You should be able to test this yourself, since it works with the linux virt-viewer too. You can probably get some log from /var/log/Xorg.0.log Try with more qxl ram/vram (I am still confused about which value does what, but you can play with large values: -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vgamem_mb=32) The VM is running in RHEV so I have no way to easily tune VGA memory. Default commandline used by RHEV is something like this: -vga qxl -global qxl-vga.ram_size=67108864 -global qxl-vga.vram_size=67108864 Here are some xorg.0.log snippets: 386s: successful resize from 888x635 to 952x1191: [ 386.302] (II) qxl(0): EDID vendor "QXL", prod id 0 [ 386.302] (II) qxl(0): DDCModeFromDetailedTiming: 952x1191 Warning: We only handle separate sync. [ 386.302] (II) qxl(0): Using hsync ranges from config file [ 386.302] (II) qxl(0): Using vrefresh ranges from config file [ 386.302] (II) qxl(0): Printing DDC gathered Modelines: [ 386.302] (II) qxl(0): Modeline "952x1191"x0.0 0.08 952 1000 1032 1112 1191 1194 1204 1225 -hsync -vsync (0.1 kHz eP) [ 386.311] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 2632x1191 [ 386.311] resizing primary to 2632x1191 [ 386.318] primary is 0x1cefc60 [ 386.435] AUDIT: Fri May 2 13:45:26 2014: 1727: client 30 connected from local host ( uid=500 gid=500 pid=1895 ) Auth name: MIT-MAGIC-COOKIE-1 ID: 117 [ 386.452] (II) config/hal: removing device spice vdagent tablet [ 386.452] (II) evdev: spice vdagent tablet: Close [ 386.452] (II) UnloadModule: "evdev" [ 386.480] (II) config/hal: Adding input device spice vdagent tablet [ 386.481] (II) Using input driver 'evdev' for 'spice vdagent tablet' [ 386.481] (**) spice vdagent tablet: always reports core events [ 386.481] (**) evdev: spice vdagent tablet: Device: "/dev/input/event4" [ 386.481] (--) evdev: spice vdagent tablet: Vendor 0 Product 0 [ 386.481] (--) evdev: spice vdagent tablet: Found 3 mouse buttons [ 386.481] (--) evdev: spice vdagent tablet: Found scroll wheel(s) [ 386.481] (--) evdev: spice vdagent tablet: Found relative axes [ 386.481] (--) evdev: spice vdagent tablet: Found absolute axes [ 386.481] (--) evdev: spice vdagent tablet: Found x and y absolute axes [ 386.481] (--) evdev: spice vdagent tablet: Found absolute touchscreen [ 386.481] (II) evdev: spice vdagent tablet: Configuring as touchscreen [ 386.481] (II) evdev: spice vdagent tablet: Adding scrollwheel support [ 386.481] (**) evdev: spice vdagent tablet: YAxisMapping: buttons 4 and 5 [ 386.481] (**) evdev: spice vdagent tablet: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200 [ 386.481] (**) Option "config_info" "hal:/org/freedesktop/Hal/devices/computer_logicaldev_input_1" [ 386.481] (II) XINPUT: Adding extended input device "spice vdagent tablet" (type: TOUCHSCREEN, id 10) [ 386.481] (WW) evdev: spice vdagent tablet: touchpads, tablets and touchscreens ignore relative axes. [ 386.481] (II) evdev: spice vdagent tablet: initialized for absolute axes. [ 386.481] (**) spice vdagent tablet: (accel) keeping acceleration scheme 1 [ 386.481] (**) spice vdagent tablet: (accel) acceleration profile 0 [ 386.481] (**) spice vdagent tablet: (accel) acceleration factor: 2.000 [ 386.481] (**) spice vdagent tablet: (accel) acceleration threshold: 4 [ 386.518] AUDIT: Fri May 2 13:45:26 2014: 1727: client 30 disconnected 1080x1920 485s: unsuccessful attempt to switch to full screen (1080x1920): [ 485.303] (II) qxl(0): EDID vendor "QXL", prod id 0 [ 485.303] (II) qxl(0): DDCModeFromDetailedTiming: 1080x1920 Warning: We only handle separate sync. [ 485.303] (II) qxl(0): Using hsync ranges from config file [ 485.303] (II) qxl(0): Using vrefresh ranges from config file [ 485.303] (II) qxl(0): Printing DDC gathered Modelines: [ 485.303] (II) qxl(0): Modeline "1080x1920"x0.0 0.14 1080 1128 1160 1240 1920 1923 1933 1975 -hsync -vsync (0.1 kHz eP) [ 485.312] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 2760x1920 [ 485.312] resizing primary to 2760x1920 [ 485.312] resizing surface0 to 21196800 [ 485.312] resizing surface0 compiled out [ 485.312] not resizing primary to virtual, leaving old virtual [ 485.426] AUDIT: Fri May 2 13:47:05 2014: 1727: client 22 connected from local host ( uid=500 gid=500 pid=1895 ) Auth name: MIT-MAGIC-COOKIE-1 ID: 117 [ 485.454] AUDIT: Fri May 2 13:47:05 2014: 1727: client 22 disconnected [ 485.455] (II) qxl(0): EDID vendor "QXL", prod id 0 [ 485.455] (II) qxl(0): DDCModeFromDetailedTiming: 952x1191 Warning: We only handle separate sync. [ 485.455] (II) qxl(0): Using hsync ranges from config file [ 485.455] (II) qxl(0): Using vrefresh ranges from config file [ 485.455] (II) qxl(0): Printing DDC gathered Modelines: [ 485.455] (II) qxl(0): Modeline "952x1191"x0.0 0.08 952 1000 1032 1112 1191 1194 1204 1225 -hsync -vsync (0.1 kHz eP) [ 485.842] AUDIT: Fri May 2 13:47:06 2014: 1727: client 30 connected from local host ( uid=500 gid=500 pid=1895 ) Auth name: MIT-MAGIC-COOKIE-1 ID: 117 [ 485.853] AUDIT: Fri May 2 13:47:06 2014: 1727: client 30 disconnected I will attach the full log to this BZ. Created attachment 891793 [details]
Xorg log from affected RHEL VM
I checked the parameters that qemu-kvm from RHEV takes and vgamem_mb is not there: #rpm -q qemu-kvm-rhev qemu-kvm-rhev-0.12.1.2-2.415.el6_5.8.x86_64 # /usr/libexec/qemu-kvm -device qxl-vga,? 2>&1 qxl-vga.ram_size=uint32 qxl-vga.vram_size=uint32 qxl-vga.revision=uint32 qxl-vga.debug=uint32 qxl-vga.guestdebug=uint32 qxl-vga.cmdlog=uint32 qxl-vga.addr=pci-devfn qxl-vga.romfile=string qxl-vga.rombar=uint32 qxl-vga.multifunction=on/off I tried with qxl-vga.ram_size=1000000000 and qxl-vga.vram_size=1000000000 instead of the default 67108864 and still no change . Same error about "resizing surface0 compiled out" is displayed when attempting to resize (could not assign the maximum uint32 value of 4294967295 since I don't have that much RAM on my host, 1GB should be enough to prove a point that it's not hardware but the driver). What other information is needed to move this further? As I tested before, this does not happen on Windows VMs with same virtual hardware. Please try this driver build and let me know if it fixes the problem:
http://brewweb.devel.redhat.com/brew/taskinfo?taskID=7444793
I tried to install it on a VM but got this ABI incompatibility: # rpm -Uvh xorg-x11-drv-qxl-0.1.1-11.el6.x86_64.rpm error: Failed dependencies: xserver-abi(videodrv-15) >= 0 is needed by xorg-x11-drv-qxl-0.1.1-11.el6.x86_64 Here is a RHEL 6.5 version:
http://brewweb.devel.redhat.com/brew/taskinfo?taskID=7457635
Yes, this build resizes the screen correctly for me on 6.5! [ 83283.764] (II) qxl(0): EDID vendor "QXL", prod id 0 [ 83283.764] (II) qxl(0): DDCModeFromDetailedTiming: 1080x1920 Warning: We only handle separate sync. [ 83283.764] (II) qxl(0): Using hsync ranges from config file [ 83283.764] (II) qxl(0): Using vrefresh ranges from config file [ 83283.764] (II) qxl(0): Printing DDC gathered Modelines: [ 83283.764] (II) qxl(0): Modeline "1080x1920"x0.0 0.14 1080 1128 1160 1240 1920 1923 1933 1975 -hsync -vsync (0.1 kHz eP) [ 83283.811] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 2760x1920 [ 83283.811] resizing primary to 2760x1920 [ 83283.822] primary is 0x16e46b0 I don't know if this build will work on RHEL 6.4. It may or may not. *** This bug has been marked as a duplicate of bug 1076728 *** |