Bug 842305

Summary: RFE: virt-viewer: support spice dynamic monitor via monitors-config
Product: Red Hat Enterprise Linux 6 Reporter: Alon Levy <alevy>
Component: virt-viewerAssignee: Daniel Berrange <berrange>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.2CC: acathrow, bsarathy, cfergeau, dallan, dblechte, desktop-qa-list, djasa, dyasny, gkong, juzhang, marcandre.lureau, mjenner, mkenneth, mzhan, rwu, virt-maint, wdai, yupzhang
Target Milestone: rcKeywords: FutureFeature
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: virt-viewer-0.5.2-14.el6 Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of: 770842
: 842411 (view as bug list) Environment:
Last Closed: 2013-02-21 04:33:22 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On: 770842, 842310    
Bug Blocks: 787160, 787569, 787578, 842298, 842411, 977213, 978877, 978878, 978879, 978880, 978883, 978884, 978885, 978887, 978888, 978889, 978892, 978893, 978895, 979217, 979218, 979221, 1088390    
Attachments:
Description Flags
spice-debug infor none

Comment 2 Daniel Berrange 2012-07-26 13:27:16 EDT
A set of patches for this are accepted upstream, but would require a rebase of virt-viewer to be pratical to add to 6.4
Comment 3 Daniel Berrange 2012-10-15 11:10:50 EDT
On review it was practical to cherry-pick the patches into 6.4 branch, so this is possible to implement without a rebase being required.
Comment 6 Geyang Kong 2012-10-19 08:00:53 EDT
Since I cannot get enough information from bug so I tried following steps but failed. Maybe I got something wrong

Steps:
1. Launch a guest with following command
/usr/libexec/qemu-kvm -M rhel6.4.0 -cpu Conroe -enable-kvm -m 2048 -smp 2,sockets=2,cores=1,threads=1 -enable-kvm -name T1 -uuid feebc8fd-f8b0-4e75-abc3-e63fcdb67170 -k en-us -no-kvm-pit-reinjection -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/NFS/T1.img,if=none,id=disk0,format=raw,werror=stop,rerror=stop,aio=native -device ide-drive,bus=ide.0,unit=1,drive=disk0,id=virtio-disk0,bootindex=1 -monitor stdio -qmp tcp:0:6666,server,nowait -boot c -chardev socket,path=/tmp/isa-serial,server,nowait,id=isa1 -device isa-serial,chardev=isa1,id=isa-serial1 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x5  -chardev socket,id=charchannel0,path=/tmp/serial-socket,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm -chardev spicevmc,id=charchannel1,name=vdagent -device virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel1,id=channel1,name=com.redhat.spice.0 -chardev socket,path=/tmp/foo,server,nowait,id=foo -device virtconsole,chardev=foo,id=console0 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x6 -spice seamless-migration=on,port=5930,disable-ticketing -k en-us -vga qxl -global qxl.num_displays=2 (I constructed this command according to bug 770842)
2. Run remote-viewer spice://ip:5930

Actual result:
1. There is only one display appeared

Expected result:
1. 2 displays launched.

Additional info:
1. I've tried both windows and linux guest. In windows guest, I installed qxl driver and spice-agent. In linux, I installed spice-vdagent-0.12.0-2.el6.x86_64. Neither of them works.
Comment 7 David Jaša 2012-10-19 08:12:04 EDT
Geyang, you need a client that has at least two monitors physically and run virt-viewer with --full-screen=auto-conf to see if the feature works or not.
Comment 8 Alon Levy 2012-10-19 08:19:24 EDT
My bad, the description in the original bug (that this is a clone of) is not at all how it was implemented. The number of displays is determined by the client via requests to the guest. Additionally, this is only for linux, windows driver and guest agent have not been changed in any way for this.

What David said is correct, but I think there are still issues with remote-viewer in this mode.
Comment 9 Geyang Kong 2012-10-22 08:30:36 EDT
I've tried following steps but failed:

Version-Release number of selected component (if applicable):
spice-server-0.12.0-1.el6.x86_64
spice-protocol-0.12.2-1.el6.noarch
spice-glib-0.14-4.el6.x86_64
spice-gtk-0.14-4.el6.x86_64
spice-vdagent-0.12.0-2.el6.x86_64
spice-gtk-debuginfo-0.14-4.el6.x86_64
spice-gtk-python-0.14-4.el6.x86_64
spice-gtk-tools-0.14-4.el6.x86_64
xorg-x11-drv-qxl-0.1.0-2.el6.x86_64
I've installed these packages on both host and guest.

Steps:
1. Got a notebook computer and connect another monitor to its VGA interface.
2. Install a spice+qxl guest.
3. Update above packages in both host and guest.
4. Run virt-viewer $guestname --full-screen=auto-conf

Actual result:
1. Only 1 console appeared.

Expected result:
1. I can see 2 consoles.
Comment 10 Geyang Kong 2012-10-22 08:31:51 EDT
Created attachment 631461 [details]
spice-debug infor
Comment 11 Alon Levy 2012-10-22 08:44:40 EDT
I don't think this is supported with virt-viewer, only with remote-viewer.
Comment 12 Geyang Kong 2012-10-22 22:21:09 EDT
Verified pass with remote-viewer:

Version-Release number of selected component (if applicable):
spice-server-0.12.0-1.el6.x86_64
spice-protocol-0.12.2-1.el6.noarch
spice-glib-0.14-4.el6.x86_64
spice-gtk-0.14-4.el6.x86_64
spice-vdagent-0.12.0-2.el6.x86_64
spice-gtk-debuginfo-0.14-4.el6.x86_64
spice-gtk-python-0.14-4.el6.x86_64
spice-gtk-tools-0.14-4.el6.x86_64
xorg-x11-drv-qxl-0.1.0-2.el6.x86_64

Steps:
1. Got a notebook computer and connect another monitor to its VGA interface.
2. Install a spice+qxl guest.
3. Update above packages in both host and guest.
4. Run remote-viewer spice://ip:port --full-screen=auto-conf

Change this bug to verified.
Comment 13 Geyang Kong 2012-10-22 22:33:46 EDT
Since bug 867459 is still there, I cannot try this bug on rhevm, so skipped this scenario for now.
Comment 15 errata-xmlrpc 2013-02-21 04:33:22 EST
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.

http://rhn.redhat.com/errata/RHBA-2013-0361.html