Bug 1296878
| Summary: | virt-viewer console will restore a larger window when use mouse to drag the window to minimum | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | mxie <mxie> | ||||||||
| Component: | virt-viewer | Assignee: | Virt Viewer Maint <virt-viewer-maint> | ||||||||
| Status: | CLOSED ERRATA | QA Contact: | Virtualization Bugs <virt-bugs> | ||||||||
| Severity: | medium | Docs Contact: | |||||||||
| Priority: | medium | ||||||||||
| Version: | 6.8 | CC: | cfergeau, dblechte, fidencio, fziglio, juzhou, mxie, mzhan, rbalakri, tzheng, xiaodwan | ||||||||
| Target Milestone: | rc | ||||||||||
| Target Release: | --- | ||||||||||
| Hardware: | x86_64 | ||||||||||
| OS: | Unspecified | ||||||||||
| Whiteboard: | |||||||||||
| Fixed In Version: | virt-viewer-2.0-13.el6 | Doc Type: | Bug Fix | ||||||||
| Doc Text: | Story Points: | --- | |||||||||
| Clone Of: | |||||||||||
| : | 1297260 (view as bug list) | Environment: | |||||||||
| Last Closed: | 2016-05-10 21:22:03 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: | |||||||||||
| Bug Depends On: | |||||||||||
| Bug Blocks: | 1297260 | ||||||||||
| Attachments: |
|
||||||||||
Created attachment 1112846 [details]
rhel7 guest log
Created attachment 1112847 [details]
rhel6 guest log
I did some tests. Looks like on former rhel-7 this limitation used to work. I updated the system and get same issue. Even using old kernel (and all other system updated) I get same issue so it's something in the system that changed. Forget... I don't know why kernel does not enforce these limits and why the new tools can possibly force a smaller resolution. Yesterday I did some investigation on the Kernel side. Turn out that the encoded limitation (320x200) apply to the frame buffer but not to the crt. This appears quite weird but looks like that DRM allows to have a bigger frame buffer. For the old guys (like me) this will remember the panning feature of the (x)VGA where you can set the frame buffer to a big area of memory but display only a limited part. This allows to show a small area just changing a registry in the card, for instance to implement double/triple buffering. Now I need to find a way to tell kernel the limits for crt. The 2 patches that solve this issue are: 907f8c5d3347eef95ecb6eccc7c5752093c7f5cf c2046a2992b04fde2286c6feffdd7f4410087583 Try to verify the bug with build: virt-viewer-2.0-13.el6.x86_64 Steps: 1.Prepare a rhel6 guest or a rhel7 guest and use virt-viewer connect to the guest 2.Use mouse to drag the window to minimum, then virt-viewer window size will keep at 320x200 even if using mouse to drag the window to small size, debug info as below: # virt-viewer rhel6released --debug --spice-debug (virt-viewer:13576): virt-viewer-DEBUG: Allocated 320x200 (virt-viewer:13576): virt-viewer-DEBUG: Child allocate 320x200 (virt-viewer:13576): GSpice-DEBUG: spice-widget.c:1049 recalc geom monitor: 0:0, guest +0+0:320x200, window 320x200, zoom 1 drag the window 3.Check the resolution of guest, the resolution is also 320x200 #xrandr Screen 0: minimum 320 x 200, current 320 x 200, maximum 8192 x 8192 qxl-0 connected 320x200+0+0 0mm x 0mm 1024x768 60.0 + 2048x2048 60.0 2560x1600 60.0 2000x2000 60.0 2560x1440 60.0 2048x1536 60.0 1920x1440 60.0 1920x1200 60.0 1920x1080 60.0 1600x1200 60.0 1680x1050 60.0 1400x1050 60.0 1600x900 60.0 1280x1024 60.0 1440x900 60.0 1280x960 60.0 1366x768 60.0 1360x768 60.0 1280x800 60.0 1152x870 60.0 1152x864 60.0 1280x768 60.0 1280x760 60.0 1280x720 60.0 1024x600 60.0 960x640 60.0 832x624 60.0 800x600 60.0 800x480 60.0 640x480 60.0 320x200-0 0.1* qxl-1 disconnected qxl-2 disconnected qxl-3 disconnected Result now: virt-viewer console keep the window size at 320x200 when use mouse to drag the window to minimum So move the bug from ON_QA to VERIFIED Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-0832.html |
Created attachment 1112844 [details] screenshot1 Description of problem: virt-viewer console will restore a larger window when use mouse to drag the window to minimum Version-Release number of selected component (if applicable): virt-viewer-2.0-12.el6.x86_64 How reproducible: 100% Steps to Reproduce: 1.Prepare a rhel7 guest and use virt-viewer connect to the guest # virt-viewer rhel7.2-1030 --debug --spice-debug 2.Use mouse to drag the window to minimum, then the virt-viewer console will restore a larger window( pls refer to screenshot1) and the debug info prompt like below(details please refer to attachment log" rhel7 guest log"): # virt-viewer rhel7.2-1030 --debug --spice-debug (virt-viewer:9494): virt-viewer-DEBUG: Allocated 203x50 (virt-viewer:9494): virt-viewer-DEBUG: Child allocate 19x50 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:1049 recalc geom monitor: 0:0, guest +0+0:200x50, window 19x50, zoom 1 (virt-viewer:9494): GSpice-DEBUG: channel-display.c:1712 display-2:0: monitors config: n: 1/4 (virt-viewer:9494): GSpice-DEBUG: channel-display.c:1732 display-2:0: monitor id: 0, surface id: 0, +0+0-200x50 (virt-viewer:9494): virt-viewer-DEBUG: Allocated 203x537 (virt-viewer:9494): virt-viewer-DEBUG: Child allocate 200x537 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:1049 recalc geom monitor: 0:0, guest +0+0:200x50, window 200x537, zoom 1 (virt-viewer:9494): GSpice-DEBUG: channel-cursor.c:309 cursor-4:0: set_cursor: flags 0, size 16384 (virt-viewer:9494): GSpice-DEBUG: channel-cursor.c:316 cursor-4:0: set_cursor: type alpha(0), 0, 64x64 (virt-viewer:9494): GLib-GObject-WARNING **: value "50" of type `gint' is invalid or out of range for property `desktop-height' of type `gint' (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:267 update monitor area 0:0 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:2083 update area, primary: 1064x537, area: +0+0 200x50 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:1049 recalc geom monitor: 0:0, guest +0+0:200x50, window 200x537, zoom 1 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:267 update monitor area 0:1 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:280 update monitor: no monitor 1 (virt-viewer:9494): GSpice-DEBUG: spice-channel.c:2702 test cap 1 in 0x12: yes (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:283 waiting until MonitorsConfig is received (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:267 update monitor area 0:2 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:280 update monitor: no monitor 2 (virt-viewer:9494): GSpice-DEBUG: spice-channel.c:2702 test cap 1 in 0x12: yes (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:283 waiting until MonitorsConfig is received (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:267 update monitor area 0:3 (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:280 update monitor: no monitor 3 (virt-viewer:9494): GSpice-DEBUG: spice-channel.c:2702 test cap 1 in 0x12: yes (virt-viewer:9494): GSpice-DEBUG: spice-widget.c:283 waiting until MonitorsConfig is received (virt-viewer:9494): GSpice-DEBUG: channel-display.c:1712 display-2:0: monitors config: n: 1/4 (virt-viewer:9494): GSpice-DEBUG: channel-display.c:1732 display-2:0: monitor id: 0, surface id: 0, +0+0-200x50 (virt-viewer:9494): virt-viewer-DEBUG: Display size request 200x537 (desktop 200x537) (virt-viewer:9494): virt-viewer-DEBUG: Allocated 203x537 (virt-viewer:9494): virt-viewer-DEBUG: Child allocate 200x537 Actual results: As above description Expected results: virt-viewer console should keep the window size when use mouse to drag the window to minimum Addtional info: When use virt-viewer to connect a RHEL6 guest and use mouse to drag the window to minimum, it could reproduce the problem sometimes, details please refer to attachment log "rhel6 guest log"