← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1641517] [NEW] spice can't support usb redirection

 

Public bug reported:

I have a environment of Newton in ubuntu16.04, every component that i install is ok ,
then i build a vm with spice proxy,the configurations in nova.conf like :

[spice]
enabled = True
agent_enabled = True
server_listen = 0.0.0.0
server_proxyclient_address = $my_ip
html5proxy_base_url = http://$my_ip:6082/spice_auto.html

of course the console is also ok ,but when i want transfer some doc to vm from client usb, vm can't find the usb device
there is nothing about usb in vm.xml :

<domain type='kvm' id='19'>
  <name>instance-00000010</name>
  <uuid>e465443f-32b6-4cb7-9e17-2aec45bac79f</uuid>
  <metadata>
    <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0";>
      <nova:package version="14.0.1"/>
      <nova:name>ccc</nova:name>
      <nova:creationTime>2016-11-11 09:23:24</nova:creationTime>
      <nova:flavor name="micro">
        <nova:memory>256</nova:memory>
        <nova:disk>1</nova:disk>
        <nova:swap>0</nova:swap>
        <nova:ephemeral>0</nova:ephemeral>
        <nova:vcpus>1</nova:vcpus>
      </nova:flavor>
      <nova:owner>
        <nova:user uuid="bca1c2494f9c4680931e7000500ce785">admin</nova:user>
        <nova:project uuid="8375cad45b8945838d86f4ebe5622bac">admin</nova:project>
      </nova:owner>
      <nova:root type="image" uuid="f45bcd7f-c774-425a-8aff-b14a4a065497"/>
    </nova:instance>
  </metadata>
  <memory unit='KiB'>262144</memory>
  <currentMemory unit='KiB'>262144</currentMemory>
  <vcpu placement='static'>1</vcpu>
  <cputune>
    <shares>1024</shares>
  </cputune>
  <resource>
    <partition>/machine</partition>
  </resource>
  <sysinfo type='smbios'>
    <system>
      <entry name='manufacturer'>OpenStack Foundation</entry>
      <entry name='product'>OpenStack Nova</entry>
      <entry name='version'>14.0.1</entry>
      <entry name='serial'>6a0225ac-4f57-329c-e89c-60965806fac3</entry>
      <entry name='uuid'>e465443f-32b6-4cb7-9e17-2aec45bac79f</entry>
      <entry name='family'>Virtual Machine</entry>
    </system>
  </sysinfo>
  <os>
    <type arch='x86_64' machine='pc-i440fx-xenial'>hvm</type>
    <boot dev='hd'/>
    <smbios mode='sysinfo'/>
  </os>
  <features>
    <acpi/>
    <apic/>
  </features>
  <cpu mode='host-model'>
    <model fallback='allow'/>
    <topology sockets='1' cores='1' threads='1'/>
  </cpu>
  <clock offset='utc'>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='hpet' present='no'/>
  </clock>
  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>
  <devices>
    <emulator>/usr/bin/kvm-spice</emulator>
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='none'/>
      <source file='/var/lib/nova/instances/e465443f-32b6-4cb7-9e17-2aec45bac79f/disk'/>
      <backingStore type='file' index='1'>
        <format type='raw'/>
        <source file='/var/lib/nova/instances/_base/69a052e8d9d9ac900d307dd36f4d5e5dc79e1365'/>
        <backingStore/>
      </backingStore>
      <target dev='vda' bus='virtio'/>
      <alias name='virtio-disk0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
    </disk>
    <controller type='usb' index='0'>
      <alias name='usb'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
    </controller>
    <controller type='pci' index='0' model='pci-root'>
      <alias name='pci.0'/>
    </controller>
    <controller type='virtio-serial' index='0'>
      <alias name='virtio-serial0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </controller>
    <interface type='bridge'>
      <mac address='fa:16:3e:e2:56:4c'/>
      <source bridge='brqc47a5070-9e'/>
      <target dev='tap73ffa97f-f3'/>
      <model type='virtio'/>
      <alias name='net0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
    </interface>
    <serial type='file'>
      <source path='/var/lib/nova/instances/e465443f-32b6-4cb7-9e17-2aec45bac79f/console.log'/>
      <target port='0'/>
      <alias name='serial0'/>
    </serial>
    <serial type='pty'>
      <source path='/dev/pts/1'/>
      <target port='1'/>
      <alias name='serial1'/>
    </serial>
    <console type='file'>
      <source path='/var/lib/nova/instances/e465443f-32b6-4cb7-9e17-2aec45bac79f/console.log'/>
      <target type='serial' port='0'/>
      <alias name='serial0'/>
    </console>
    <channel type='pty'>
      <source path='/dev/pts/2'/>
      <target type='virtio' name='com.redhat.spice.0' state='disconnected'/>
      <alias name='channel0'/>
      <address type='virtio-serial' controller='0' bus='0' port='1'/>
    </channel>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='spice' port='5900' autoport='yes' listen='0.0.0.0' keymap='en-us'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1'/>
      <alias name='video0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
    </video>
    <memballoon model='virtio'>
      <stats period='10'/>
      <alias name='balloon0'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </memballoon>
  </devices>
  <seclabel type='dynamic' model='apparmor' relabel='yes'>
    <label>libvirt-e465443f-32b6-4cb7-9e17-2aec45bac79f</label>
    <imagelabel>libvirt-e465443f-32b6-4cb7-9e17-2aec45bac79f</imagelabel>
  </seclabel>
</domain>

** Affects: nova
     Importance: Undecided
     Assignee: wang jiedong (jeery)
         Status: New

** Changed in: nova
     Assignee: (unassigned) => wang jiedong (jeery)

-- 
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/1641517

Title:
  spice can't support usb redirection

Status in OpenStack Compute (nova):
  New

Bug description:
  I have a environment of Newton in ubuntu16.04, every component that i install is ok ,
  then i build a vm with spice proxy,the configurations in nova.conf like :

  [spice]
  enabled = True
  agent_enabled = True
  server_listen = 0.0.0.0
  server_proxyclient_address = $my_ip
  html5proxy_base_url = http://$my_ip:6082/spice_auto.html

  of course the console is also ok ,but when i want transfer some doc to vm from client usb, vm can't find the usb device
  there is nothing about usb in vm.xml :

  <domain type='kvm' id='19'>
    <name>instance-00000010</name>
    <uuid>e465443f-32b6-4cb7-9e17-2aec45bac79f</uuid>
    <metadata>
      <nova:instance xmlns:nova="http://openstack.org/xmlns/libvirt/nova/1.0";>
        <nova:package version="14.0.1"/>
        <nova:name>ccc</nova:name>
        <nova:creationTime>2016-11-11 09:23:24</nova:creationTime>
        <nova:flavor name="micro">
          <nova:memory>256</nova:memory>
          <nova:disk>1</nova:disk>
          <nova:swap>0</nova:swap>
          <nova:ephemeral>0</nova:ephemeral>
          <nova:vcpus>1</nova:vcpus>
        </nova:flavor>
        <nova:owner>
          <nova:user uuid="bca1c2494f9c4680931e7000500ce785">admin</nova:user>
          <nova:project uuid="8375cad45b8945838d86f4ebe5622bac">admin</nova:project>
        </nova:owner>
        <nova:root type="image" uuid="f45bcd7f-c774-425a-8aff-b14a4a065497"/>
      </nova:instance>
    </metadata>
    <memory unit='KiB'>262144</memory>
    <currentMemory unit='KiB'>262144</currentMemory>
    <vcpu placement='static'>1</vcpu>
    <cputune>
      <shares>1024</shares>
    </cputune>
    <resource>
      <partition>/machine</partition>
    </resource>
    <sysinfo type='smbios'>
      <system>
        <entry name='manufacturer'>OpenStack Foundation</entry>
        <entry name='product'>OpenStack Nova</entry>
        <entry name='version'>14.0.1</entry>
        <entry name='serial'>6a0225ac-4f57-329c-e89c-60965806fac3</entry>
        <entry name='uuid'>e465443f-32b6-4cb7-9e17-2aec45bac79f</entry>
        <entry name='family'>Virtual Machine</entry>
      </system>
    </sysinfo>
    <os>
      <type arch='x86_64' machine='pc-i440fx-xenial'>hvm</type>
      <boot dev='hd'/>
      <smbios mode='sysinfo'/>
    </os>
    <features>
      <acpi/>
      <apic/>
    </features>
    <cpu mode='host-model'>
      <model fallback='allow'/>
      <topology sockets='1' cores='1' threads='1'/>
    </cpu>
    <clock offset='utc'>
      <timer name='pit' tickpolicy='delay'/>
      <timer name='rtc' tickpolicy='catchup'/>
      <timer name='hpet' present='no'/>
    </clock>
    <on_poweroff>destroy</on_poweroff>
    <on_reboot>restart</on_reboot>
    <on_crash>destroy</on_crash>
    <devices>
      <emulator>/usr/bin/kvm-spice</emulator>
      <disk type='file' device='disk'>
        <driver name='qemu' type='qcow2' cache='none'/>
        <source file='/var/lib/nova/instances/e465443f-32b6-4cb7-9e17-2aec45bac79f/disk'/>
        <backingStore type='file' index='1'>
          <format type='raw'/>
          <source file='/var/lib/nova/instances/_base/69a052e8d9d9ac900d307dd36f4d5e5dc79e1365'/>
          <backingStore/>
        </backingStore>
        <target dev='vda' bus='virtio'/>
        <alias name='virtio-disk0'/>
        <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
      </disk>
      <controller type='usb' index='0'>
        <alias name='usb'/>
        <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
      </controller>
      <controller type='pci' index='0' model='pci-root'>
        <alias name='pci.0'/>
      </controller>
      <controller type='virtio-serial' index='0'>
        <alias name='virtio-serial0'/>
        <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
      </controller>
      <interface type='bridge'>
        <mac address='fa:16:3e:e2:56:4c'/>
        <source bridge='brqc47a5070-9e'/>
        <target dev='tap73ffa97f-f3'/>
        <model type='virtio'/>
        <alias name='net0'/>
        <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
      </interface>
      <serial type='file'>
        <source path='/var/lib/nova/instances/e465443f-32b6-4cb7-9e17-2aec45bac79f/console.log'/>
        <target port='0'/>
        <alias name='serial0'/>
      </serial>
      <serial type='pty'>
        <source path='/dev/pts/1'/>
        <target port='1'/>
        <alias name='serial1'/>
      </serial>
      <console type='file'>
        <source path='/var/lib/nova/instances/e465443f-32b6-4cb7-9e17-2aec45bac79f/console.log'/>
        <target type='serial' port='0'/>
        <alias name='serial0'/>
      </console>
      <channel type='pty'>
        <source path='/dev/pts/2'/>
        <target type='virtio' name='com.redhat.spice.0' state='disconnected'/>
        <alias name='channel0'/>
        <address type='virtio-serial' controller='0' bus='0' port='1'/>
      </channel>
      <input type='mouse' bus='ps2'/>
      <input type='keyboard' bus='ps2'/>
      <graphics type='spice' port='5900' autoport='yes' listen='0.0.0.0' keymap='en-us'>
        <listen type='address' address='0.0.0.0'/>
      </graphics>
      <video>
        <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1'/>
        <alias name='video0'/>
        <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
      </video>
      <memballoon model='virtio'>
        <stats period='10'/>
        <alias name='balloon0'/>
        <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
      </memballoon>
    </devices>
    <seclabel type='dynamic' model='apparmor' relabel='yes'>
      <label>libvirt-e465443f-32b6-4cb7-9e17-2aec45bac79f</label>
      <imagelabel>libvirt-e465443f-32b6-4cb7-9e17-2aec45bac79f</imagelabel>
    </seclabel>
  </domain>

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1641517/+subscriptions


Follow ups