yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #57942
[Bug 1634495] [NEW] nova generate wrong spice channel type 'pty', which should be 'spicevmc'
Public bug reported:
Description
===========
In openstack kilo release(I know it's somekind of out of date, howerver I noticed that the code cause this issue still exists in the latest nova.git repo), if you use spice as the default console, the type of a spice channel(used by apice agent) is 'pyt', which should be 'spicevmc'.
Steps to reproduce
==================
1. Modify the nova.conf to use spice as default console.
Edit /etc/nova/nova.conf, add the following lines:
[default]
vnc_enabled=false
[spice]
html5proxy_base_url=http://192.168.209.11:6082/spice_auto.html
server_listen=0.0.0.0
server_proxyclient_address=192.168.209.31
enabled=true
keymap=en-us
2. Modify the nova-compute log level to debug(For convenience, I just edit the log code from LOG.debug to LOG.error.)
The log code is in:
/usr/lib/python2.7/site-packages/nova/virt/libvirt/config.py
def to_xml(self, pretty_print=True):
root = self.format_dom()
xml_str = etree.tostring(root, pretty_print=pretty_print)
LOG.debug("Generated XML %s ", (xml_str,))
return xml_str
Restart the openstack-nova-compute.service: systemctl restart openstack-nova-compute.service
3. Start an instance.
4. Check the printed xml in /var/log/nova/nova-compute.log, you will see the generated xml:
2016-10-18 16:54:36.848 7061 ERROR nova.virt.libvirt.config [req-76070e65-4c92-41eb-9ee6-a124fefae4d2 03a011159e8d464bafc89a88823a7403 92de23d236a6461f96c43e71ac7c60ae - - -] Generated XML ('<domain type="kvm">\n <uuid>38181e25-df56-4594-97e6-f1da2bfe1579</uuid>\n <name>instance-00000044</name>\n <memory>4194304</memory>\n <vcpu>2</vcpu>\n <metadata>\n <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0">\n <nova:package version="2015.1.2-1.el7"/>\n <nova:name>test</nova:name>\n <nova:creationTime>2016-10-18 08:54:36</nova:creationTime>\n <nova:flavor name="win7">\n <nova:memory>4096</nova:memory>\n <nova:disk>40</nova:disk>\n <nova:swap>0</nova:swap>\n <nova:ephemeral>0</nova:ephemeral>\n <nova:vcpus>2</nova:vcpus>\n </nova:flavor>\n <nova:owner>\n <nova:user uuid="03a011159e8d464bafc89a88823a7403">admin</nova:user>\n <nova:project uuid="92de23d236a6461f96c43e71ac7c60ae">admin</nova:project>\n </nova:owner>\n <nova:root type="image" uuid="2d8a12f8-556a-4459-bb76-c10b398269a0"/>\n </nova:instance>\n </metadata>\n <sysinfo type="smbios">\n <system>\n <entry name="manufacturer">Fedora Project</entry>\n <entry name="product">OpenStack Nova</entry>\n <entry name="version">2015.1.2-1.el7</entry>\n <entry name="serial">4d6ca91a-f38e-4329-95cc-0ff79326bd37</entry>\n <entry name="uuid">38181e25-df56-4594-97e6-f1da2bfe1579</entry>\n </system>\n </sysinfo>\n <os>\n <type>hvm</type>\n <boot dev="hd"/>\n <smbios mode="sysinfo"/>\n </os>\n <features>\n <acpi/>\n <apic/>\n </features>\n <cputune>\n <shares>2048</shares>\n </cputune>\n <clock offset="utc">\n <timer name="pit" tickpolicy="delay"/>\n <timer name="rtc" tickpolicy="catchup"/>\n <timer name="hpet" present="no"/>\n </clock>\n <cpu mode="host-model" match="exact">\n <topology sockets="2" cores="1" threads="1"/>\n </cpu>\n <devices>\n <disk type="network" device="disk">\n <driver type="raw" cache="none"/>\n <source protocol="rbd" name="vms/38181e25-df56-4594-97e6-f1da2bfe1579_disk">\n <host name="192.168.30.208" port="6789"/>\n </source>\n <auth username="cinder">\n <secret type="ceph" uuid="812cdf8a-e932-4c03-84ed-d30ee2847fa2"/>\n </auth>\n <target bus="virtio" dev="vda"/>\n </disk>\n <interface type="bridge">\n <mac address="fa:16:3e:38:b4:6e"/>\n <model type="virtio"/>\n <source bridge="qbr313aad30-aa"/>\n <target dev="tap313aad30-aa"/>\n </interface>\n <serial type="file">\n <source path="/var/lib/nova/instances/38181e25-df56-4594-97e6-f1da2bfe1579/console.log"/>\n </serial>\n <serial type="pty"/>\n <channel type="spicevmc">\n <target type="virtio" name="com.redhat.spice.0"/>\n </channel>\n <graphics type="spice" autoport="yes" keymap="en-us" listen="0.0.0.0"/>\n <video>\n <model type="qxl"/>\n </video>\n <memballoon model="virtio">\n <stats period="10"/>\n </memballoon>\n </devices>\n</domain>\n',)
Expected result
===============
The channel type should be 'spicevmc', like this:
<channel type='spicevmc'>
<target type='virtio' name='com.redhat.spice.0'/>
</channel>
I confirmed the expect result from the following aspects:
1. Firstly, the test code in nova/tests/unit/virt/libvirt/test_config.py(latest nova.git repo)
1411 class LibvirtConfigGuestChannelTest(LibvirtConfigBaseTest):
1412 def test_config_spice_minimal(self):
1413 obj = config.LibvirtConfigGuestChannel()
1414 obj.type = "spicevmc"
1415
1416 xml = obj.to_xml()
1417 self.assertXmlEqual(xml, """
1418 <channel type="spicevmc">
1419 <target type='virtio'/>
1420 </channel>""")
1421
1422 def test_config_spice_full(self):
1423 obj = config.LibvirtConfigGuestChannel()
1424 obj.type = "spicevmc"
1425 obj.target_name = "com.redhat.spice.0"
1426
1427 xml = obj.to_xml()
1428 self.assertXmlEqual(xml, """
1429 <channel type="spicevmc">
1430 <target type='virtio' name='com.redhat.spice.0'/>
1431 </channel>""")
2. Secondly, if we use the channel whose type is 'pty', and install vdagent or spice-guest-tools-0.100.exe in windows 7 guest os, the CPU utilization of vdagent.exe is very high(I noticed both %50 and 99%, in two instances), and the error log is printed:
(C:\Windows\Temp\vdagent.log)
1724::INFO::2016-10-18 0613:21,821::VDAgent::run::***Agent started in session 1***
1724::INFO::2016-10-18 0613:21,821::log_version::0.5.1.0
1724::INFO::2016-10-18 0613:21,821::DesktopLayout::consistent_displays::#qxls 1 #others 0
1724::INFO::2016-10-18 0613:21,821::VDAgent::send_announce_capabilities::Sending capabilities:
1724::INFO::2016-10-18 0613:21,821::VDAgent::send_announce_capabilities::6B7
1724::INFO::2016-10-18 0613:21,821::VDAgent::run::Connected to server
1724::INFO::2016-10-18 0613:21,821::VDAgent::input_desktop_message_loop::Desktop: Winlogon
1724::INFO::2016-10-18 0613:21,821::VDAgent::write_completion:vio_serial write completion error 554
The mouse cursor moves slowly, you also cannot use clipboard between the guest os and the client.
If I modify the channel type to 'spicevmc', all the problems disappeared.
Actual result
=============
The channel type for spice agent is 'pty':
<channel type='pty'>
<target type='virtio' name='com.redhat.spice.0'/>
</channel>
Environment
===========
1. OS and openstack release
[root@node3 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@node3 ~]# uname -a
Linux node3 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[root@node3 ~]# rpm -qa | grep nova
openstack-nova-common-2015.1.2-1.el7.noarch
openstack-nova-compute-2015.1.2-1.el7.noarch
python-nova-2015.1.2-1.el7.noarch
python-novaclient-2.23.0-1.el7.noarch
2. Hypervisor
Libvirt + QEMU + KVM
[root@node3 ~]# rpm -qa | grep libvirt
libvirt-client-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-nodedev-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-storage-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-nwfilter-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-secret-1.2.17-13.el7_2.5.x86_64
libvirt-python-1.2.17-2.el7.x86_64
libvirt-daemon-driver-qemu-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-kvm-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-network-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-interface-1.2.17-13.el7_2.5.x86_64
[root@node3 ~]# rpm -qa | grep qemu
libvirt-daemon-driver-qemu-1.2.17-13.el7_2.5.x86_64
qemu-kvm-common-1.5.3-105.el7_2.7.x86_64
ipxe-roms-qemu-20160127-1.git6366fa7a.el7.noarch
qemu-img-1.5.3-105.el7_2.7.x86_64
qemu-kvm-1.5.3-105.el7_2.7.x86_64
Logs & Configs
==============
Normal vdagent log if I use the 'spicevmc' channel type:
1284::INFO::2016-10-18 06:39:43,000::VDAgent::run::***Agent started in session 1***
1284::INFO::2016-10-18 06:39:43,000::log_version::0.5.1.0
1284::INFO::2016-10-18 06:39:43,000::DesktopLayout::consistent_displays::#qxls 1 #others 0
1284::INFO::2016-10-18 06:39:43,000::VDAgent::send_announce_capabilities::Sending capabilities:
1284::INFO::2016-10-18 06:39:43,000::VDAgent::send_announce_capabilities::6B7
1284::INFO::2016-10-18 06:39:43,000::VDAgent::run::Connected to server
1284::INFO::2016-10-18 06:39:43,000::VDAgent::input_desktop_message_loop::Desktop: Winlogon
1284::INFO::2016-10-18 06:39:43,031::VDAgent::handle_announce_capabilities::Got capabilities (1)
1284::INFO::2016-10-18 06:39:43,031::VDAgent::handle_announce_capabilities::1077
1284::INFO::2016-10-18 06:39:43,031::VDAgent::send_announce_capabilities::Sending capabilities:
1284::INFO::2016-10-18 06:39:43,031::VDAgent::send_announce_capabilities::6B7
1284::INFO::2016-10-18 06:39:43,046::DisplaySetting::set::setting display options
1284::INFO::2016-10-18 06:39:43,046::DisplaySetting::get_user_process_id::explorer.exe not found
1284::INFO::2016-10-18 06:39:43,046::DisplaySetting::reload_from_registry::get_user_process_id failed
1284::INFO::2016-10-18 06:39:43,046::VDAgent::handle_max_clipboard::Set max clipboard size: 104857600
1284::INFO::2016-10-18 06:39:43,046::VDAgent::handle_mon_config::0. 1024*768*32 (0,0) 1
1284::INFO::2016-10-18 06:39:43,046::DesktopLayout::consistent_displays::#qxls 1 #others 0
1284::INFO::2016-10-18 06:39:43,046::DesktopLayout::set_displays::Set display mode 1024x768
1284::INFO::2016-10-18 06:39:43,078::VDAgent::wnd_proc::Display change
1284::INFO::2016-10-18 06:39:43,078::DesktopLayout::consistent_displays::#qxls 1 #others 0
1284::INFO::2016-10-18 06:39:48,625::VDAgent::handle_control_event::Control command 2
1284::INFO::2016-10-18 06:39:48,625::VDAgent::handle_control_event::session logon
1284::INFO::2016-10-18 06:39:54,046::VDAgent::handle_control_event::Control command 1
1284::INFO::2016-10-18 06:39:54,062::VDAgent::input_desktop_message_loop::Desktop: Default
1284::INFO::2016-10-18 06:39:54,062::VDAgent::input_desktop_message_loop::First display setting
1284::INFO::2016-10-18 06:39:54,062::DisplaySetting::load::loading display setting
1284::INFO::2016-10-18 06:39:54,062::DisplaySetting::get_user_process_id::explorer.exe not found
1284::INFO::2016-10-18 06:39:54,062::DisplaySetting::reload_from_registry::get_user_process_id failed
1284::INFO::2016-10-18 06:40:25,187::VDAgent::handle_clipboard_grab::grab type 1
1284::INFO::2016-10-18 06:40:29,937::VDAgent::handle_control_event::Control command 3
1284::INFO::2016-10-18 06:40:29,937::VDAgent::handle_clipboard_grab::grab type 1
1284::INFO::2016-10-18 06:40:35,578::VDAgent::handle_control_event::Control command 3
1284::INFO::2016-10-18 06:40:35,578::VDAgent::handle_clipboard_grab::grab type 1
Patch
==============
>From 2309f146f08c0d0c541ba3e8b392ee9ca072bd64 Mon Sep 17 00:00:00 2001
From: m4cr0v <m4cr0v@xxxxxxxxx>
Date: Tue, 18 Oct 2016 20:55:22 +0800
Subject: [PATCH] Fix type of the channel for spice agent.
The type of the channel for spice agent should be 'spicevmc' instead of 'pty'.
---
nova/virt/libvirt/driver.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index b0bba46..6ddf65e 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -4491,6 +4491,7 @@ class LibvirtDriver(driver.ComputeDriver):
if (CONF.spice.enabled and CONF.spice.agent_enabled and
virt_type not in ('lxc', 'uml', 'xen')):
channel = vconfig.LibvirtConfigGuestChannel()
+ channel.type = 'spicevmc'
channel.target_name = "com.redhat.spice.0"
guest.add_device(channel)
--
1.8.3.1
** Affects: nova
Importance: Undecided
Status: New
** Patch added: "Fix-type-of-the-channel-for-spice-agent.patch"
https://bugs.launchpad.net/bugs/1634495/+attachment/4763227/+files/Fix-type-of-the-channel-for-spice-agent.patch
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1634495
Title:
nova generate wrong spice channel type 'pty', which should be
'spicevmc'
Status in OpenStack Compute (nova):
New
Bug description:
Description
===========
In openstack kilo release(I know it's somekind of out of date, howerver I noticed that the code cause this issue still exists in the latest nova.git repo), if you use spice as the default console, the type of a spice channel(used by apice agent) is 'pyt', which should be 'spicevmc'.
Steps to reproduce
==================
1. Modify the nova.conf to use spice as default console.
Edit /etc/nova/nova.conf, add the following lines:
[default]
vnc_enabled=false
[spice]
html5proxy_base_url=http://192.168.209.11:6082/spice_auto.html
server_listen=0.0.0.0
server_proxyclient_address=192.168.209.31
enabled=true
keymap=en-us
2. Modify the nova-compute log level to debug(For convenience, I just edit the log code from LOG.debug to LOG.error.)
The log code is in:
/usr/lib/python2.7/site-packages/nova/virt/libvirt/config.py
def to_xml(self, pretty_print=True):
root = self.format_dom()
xml_str = etree.tostring(root, pretty_print=pretty_print)
LOG.debug("Generated XML %s ", (xml_str,))
return xml_str
Restart the openstack-nova-compute.service: systemctl restart openstack-nova-compute.service
3. Start an instance.
4. Check the printed xml in /var/log/nova/nova-compute.log, you will see the generated xml:
2016-10-18 16:54:36.848 7061 ERROR nova.virt.libvirt.config [req-76070e65-4c92-41eb-9ee6-a124fefae4d2 03a011159e8d464bafc89a88823a7403 92de23d236a6461f96c43e71ac7c60ae - - -] Generated XML ('<domain type="kvm">\n <uuid>38181e25-df56-4594-97e6-f1da2bfe1579</uuid>\n <name>instance-00000044</name>\n <memory>4194304</memory>\n <vcpu>2</vcpu>\n <metadata>\n <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0">\n <nova:package version="2015.1.2-1.el7"/>\n <nova:name>test</nova:name>\n <nova:creationTime>2016-10-18 08:54:36</nova:creationTime>\n <nova:flavor name="win7">\n <nova:memory>4096</nova:memory>\n <nova:disk>40</nova:disk>\n <nova:swap>0</nova:swap>\n <nova:ephemeral>0</nova:ephemeral>\n <nova:vcpus>2</nova:vcpus>\n </nova:flavor>\n <nova:owner>\n <nova:user uuid="03a011159e8d464bafc89a88823a7403">admin</nova:user>\n <nova:project uuid="92de23d236a6461f96c43e71ac7c60ae">admin</nova:project>\n </nova:owner>\n <nova:root type="image" uuid="2d8a12f8-556a-4459-bb76-c10b398269a0"/>\n </nova:instance>\n </metadata>\n <sysinfo type="smbios">\n <system>\n <entry name="manufacturer">Fedora Project</entry>\n <entry name="product">OpenStack Nova</entry>\n <entry name="version">2015.1.2-1.el7</entry>\n <entry name="serial">4d6ca91a-f38e-4329-95cc-0ff79326bd37</entry>\n <entry name="uuid">38181e25-df56-4594-97e6-f1da2bfe1579</entry>\n </system>\n </sysinfo>\n <os>\n <type>hvm</type>\n <boot dev="hd"/>\n <smbios mode="sysinfo"/>\n </os>\n <features>\n <acpi/>\n <apic/>\n </features>\n <cputune>\n <shares>2048</shares>\n </cputune>\n <clock offset="utc">\n <timer name="pit" tickpolicy="delay"/>\n <timer name="rtc" tickpolicy="catchup"/>\n <timer name="hpet" present="no"/>\n </clock>\n <cpu mode="host-model" match="exact">\n <topology sockets="2" cores="1" threads="1"/>\n </cpu>\n <devices>\n <disk type="network" device="disk">\n <driver type="raw" cache="none"/>\n <source protocol="rbd" name="vms/38181e25-df56-4594-97e6-f1da2bfe1579_disk">\n <host name="192.168.30.208" port="6789"/>\n </source>\n <auth username="cinder">\n <secret type="ceph" uuid="812cdf8a-e932-4c03-84ed-d30ee2847fa2"/>\n </auth>\n <target bus="virtio" dev="vda"/>\n </disk>\n <interface type="bridge">\n <mac address="fa:16:3e:38:b4:6e"/>\n <model type="virtio"/>\n <source bridge="qbr313aad30-aa"/>\n <target dev="tap313aad30-aa"/>\n </interface>\n <serial type="file">\n <source path="/var/lib/nova/instances/38181e25-df56-4594-97e6-f1da2bfe1579/console.log"/>\n </serial>\n <serial type="pty"/>\n <channel type="spicevmc">\n <target type="virtio" name="com.redhat.spice.0"/>\n </channel>\n <graphics type="spice" autoport="yes" keymap="en-us" listen="0.0.0.0"/>\n <video>\n <model type="qxl"/>\n </video>\n <memballoon model="virtio">\n <stats period="10"/>\n </memballoon>\n </devices>\n</domain>\n',)
Expected result
===============
The channel type should be 'spicevmc', like this:
<channel type='spicevmc'>
<target type='virtio' name='com.redhat.spice.0'/>
</channel>
I confirmed the expect result from the following aspects:
1. Firstly, the test code in nova/tests/unit/virt/libvirt/test_config.py(latest nova.git repo)
1411 class LibvirtConfigGuestChannelTest(LibvirtConfigBaseTest):
1412 def test_config_spice_minimal(self):
1413 obj = config.LibvirtConfigGuestChannel()
1414 obj.type = "spicevmc"
1415
1416 xml = obj.to_xml()
1417 self.assertXmlEqual(xml, """
1418 <channel type="spicevmc">
1419 <target type='virtio'/>
1420 </channel>""")
1421
1422 def test_config_spice_full(self):
1423 obj = config.LibvirtConfigGuestChannel()
1424 obj.type = "spicevmc"
1425 obj.target_name = "com.redhat.spice.0"
1426
1427 xml = obj.to_xml()
1428 self.assertXmlEqual(xml, """
1429 <channel type="spicevmc">
1430 <target type='virtio' name='com.redhat.spice.0'/>
1431 </channel>""")
2. Secondly, if we use the channel whose type is 'pty', and install vdagent or spice-guest-tools-0.100.exe in windows 7 guest os, the CPU utilization of vdagent.exe is very high(I noticed both %50 and 99%, in two instances), and the error log is printed:
(C:\Windows\Temp\vdagent.log)
1724::INFO::2016-10-18 0613:21,821::VDAgent::run::***Agent started in session 1***
1724::INFO::2016-10-18 0613:21,821::log_version::0.5.1.0
1724::INFO::2016-10-18 0613:21,821::DesktopLayout::consistent_displays::#qxls 1 #others 0
1724::INFO::2016-10-18 0613:21,821::VDAgent::send_announce_capabilities::Sending capabilities:
1724::INFO::2016-10-18 0613:21,821::VDAgent::send_announce_capabilities::6B7
1724::INFO::2016-10-18 0613:21,821::VDAgent::run::Connected to server
1724::INFO::2016-10-18 0613:21,821::VDAgent::input_desktop_message_loop::Desktop: Winlogon
1724::INFO::2016-10-18 0613:21,821::VDAgent::write_completion:vio_serial write completion error 554
The mouse cursor moves slowly, you also cannot use clipboard between the guest os and the client.
If I modify the channel type to 'spicevmc', all the problems disappeared.
Actual result
=============
The channel type for spice agent is 'pty':
<channel type='pty'>
<target type='virtio' name='com.redhat.spice.0'/>
</channel>
Environment
===========
1. OS and openstack release
[root@node3 ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@node3 ~]# uname -a
Linux node3 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[root@node3 ~]# rpm -qa | grep nova
openstack-nova-common-2015.1.2-1.el7.noarch
openstack-nova-compute-2015.1.2-1.el7.noarch
python-nova-2015.1.2-1.el7.noarch
python-novaclient-2.23.0-1.el7.noarch
2. Hypervisor
Libvirt + QEMU + KVM
[root@node3 ~]# rpm -qa | grep libvirt
libvirt-client-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-nodedev-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-storage-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-nwfilter-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-secret-1.2.17-13.el7_2.5.x86_64
libvirt-python-1.2.17-2.el7.x86_64
libvirt-daemon-driver-qemu-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-kvm-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-network-1.2.17-13.el7_2.5.x86_64
libvirt-daemon-driver-interface-1.2.17-13.el7_2.5.x86_64
[root@node3 ~]# rpm -qa | grep qemu
libvirt-daemon-driver-qemu-1.2.17-13.el7_2.5.x86_64
qemu-kvm-common-1.5.3-105.el7_2.7.x86_64
ipxe-roms-qemu-20160127-1.git6366fa7a.el7.noarch
qemu-img-1.5.3-105.el7_2.7.x86_64
qemu-kvm-1.5.3-105.el7_2.7.x86_64
Logs & Configs
==============
Normal vdagent log if I use the 'spicevmc' channel type:
1284::INFO::2016-10-18 06:39:43,000::VDAgent::run::***Agent started in session 1***
1284::INFO::2016-10-18 06:39:43,000::log_version::0.5.1.0
1284::INFO::2016-10-18 06:39:43,000::DesktopLayout::consistent_displays::#qxls 1 #others 0
1284::INFO::2016-10-18 06:39:43,000::VDAgent::send_announce_capabilities::Sending capabilities:
1284::INFO::2016-10-18 06:39:43,000::VDAgent::send_announce_capabilities::6B7
1284::INFO::2016-10-18 06:39:43,000::VDAgent::run::Connected to server
1284::INFO::2016-10-18 06:39:43,000::VDAgent::input_desktop_message_loop::Desktop: Winlogon
1284::INFO::2016-10-18 06:39:43,031::VDAgent::handle_announce_capabilities::Got capabilities (1)
1284::INFO::2016-10-18 06:39:43,031::VDAgent::handle_announce_capabilities::1077
1284::INFO::2016-10-18 06:39:43,031::VDAgent::send_announce_capabilities::Sending capabilities:
1284::INFO::2016-10-18 06:39:43,031::VDAgent::send_announce_capabilities::6B7
1284::INFO::2016-10-18 06:39:43,046::DisplaySetting::set::setting display options
1284::INFO::2016-10-18 06:39:43,046::DisplaySetting::get_user_process_id::explorer.exe not found
1284::INFO::2016-10-18 06:39:43,046::DisplaySetting::reload_from_registry::get_user_process_id failed
1284::INFO::2016-10-18 06:39:43,046::VDAgent::handle_max_clipboard::Set max clipboard size: 104857600
1284::INFO::2016-10-18 06:39:43,046::VDAgent::handle_mon_config::0. 1024*768*32 (0,0) 1
1284::INFO::2016-10-18 06:39:43,046::DesktopLayout::consistent_displays::#qxls 1 #others 0
1284::INFO::2016-10-18 06:39:43,046::DesktopLayout::set_displays::Set display mode 1024x768
1284::INFO::2016-10-18 06:39:43,078::VDAgent::wnd_proc::Display change
1284::INFO::2016-10-18 06:39:43,078::DesktopLayout::consistent_displays::#qxls 1 #others 0
1284::INFO::2016-10-18 06:39:48,625::VDAgent::handle_control_event::Control command 2
1284::INFO::2016-10-18 06:39:48,625::VDAgent::handle_control_event::session logon
1284::INFO::2016-10-18 06:39:54,046::VDAgent::handle_control_event::Control command 1
1284::INFO::2016-10-18 06:39:54,062::VDAgent::input_desktop_message_loop::Desktop: Default
1284::INFO::2016-10-18 06:39:54,062::VDAgent::input_desktop_message_loop::First display setting
1284::INFO::2016-10-18 06:39:54,062::DisplaySetting::load::loading display setting
1284::INFO::2016-10-18 06:39:54,062::DisplaySetting::get_user_process_id::explorer.exe not found
1284::INFO::2016-10-18 06:39:54,062::DisplaySetting::reload_from_registry::get_user_process_id failed
1284::INFO::2016-10-18 06:40:25,187::VDAgent::handle_clipboard_grab::grab type 1
1284::INFO::2016-10-18 06:40:29,937::VDAgent::handle_control_event::Control command 3
1284::INFO::2016-10-18 06:40:29,937::VDAgent::handle_clipboard_grab::grab type 1
1284::INFO::2016-10-18 06:40:35,578::VDAgent::handle_control_event::Control command 3
1284::INFO::2016-10-18 06:40:35,578::VDAgent::handle_clipboard_grab::grab type 1
Patch
==============
From 2309f146f08c0d0c541ba3e8b392ee9ca072bd64 Mon Sep 17 00:00:00 2001
From: m4cr0v <m4cr0v@xxxxxxxxx>
Date: Tue, 18 Oct 2016 20:55:22 +0800
Subject: [PATCH] Fix type of the channel for spice agent.
The type of the channel for spice agent should be 'spicevmc' instead of 'pty'.
---
nova/virt/libvirt/driver.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index b0bba46..6ddf65e 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -4491,6 +4491,7 @@ class LibvirtDriver(driver.ComputeDriver):
if (CONF.spice.enabled and CONF.spice.agent_enabled and
virt_type not in ('lxc', 'uml', 'xen')):
channel = vconfig.LibvirtConfigGuestChannel()
+ channel.type = 'spicevmc'
channel.target_name = "com.redhat.spice.0"
guest.add_device(channel)
--
1.8.3.1
To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1634495/+subscriptions
Follow ups