qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [Bug 1648726] [NEW] Passthrough of UAS devices fails with W


From: Jack Coulter
Subject: [Qemu-devel] [Bug 1648726] [NEW] Passthrough of UAS devices fails with Windows (10) guests
Date: Fri, 09 Dec 2016 08:09:58 -0000

Public bug reported:

Split off from https://bugs.launchpad.net/qemu/+bug/1579306 as this is a
distinct issue.

Physical USB storage devices that support the UAS protocol do not work
correctly when passed through to Windows guests (I've only tested this
with Windows 10 x64, build 1607).

Passing through such a device results in the older BOT/MSC protocol
being used:

<See attachment win10-uas-fail.png>

Using the same domain configuration with a Linux guest (tested with
SystemRescueCD 4.8.0) works correctly:

/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=uas, 5000M
/: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M

In both cases, the VM was launched via libvirt, which generated the
following command line:

/usr/bin/qemu-system-x86_64 -name guest=Win10-Edge-IE11,debug-threads=on
-S -object
secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-13-Win10
-Edge-IE11/master-key.aes -machine
pc-q35-2.7,accel=kvm,usb=off,vmport=off,dump-guest-core=off -cpu
host,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff -m 4096 -realtime
mlock=off -smp 8,sockets=1,cores=4,threads=2 -uuid 47c39707-088c-4edc-
8b6a-a7856e09f43d -no-user-config -nodefaults -chardev
socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-13-Win10-Edge-
IE11/monitor.sock,server,nowait -mon
chardev=charmonitor,id=monitor,mode=control -rtc
base=localtime,driftfix=slew -global kvm-pit.lost_tick_policy=discard
-no-hpet -no-shutdown -global ICH9-LPC.disable_s3=1 -global
ICH9-LPC.disable_s4=1 -boot strict=on -device
i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x1e -device pci-
bridge,chassis_nr=2,id=pci.2,bus=pci.1,addr=0x0 -device nec-usb-
xhci,id=usb,bus=pci.2,addr=0x6 -device virtio-scsi-
pci,id=scsi0,bus=pci.2,addr=0x3 -device virtio-serial-pci,id=virtio-
serial0,bus=pci.2,addr=0x4 -drive file=/home/jack/IMG/Win10-Edge-
IE11.qcow2,format=qcow2,if=none,id=drive-scsi0-0-0-0,discard=unmap
-device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-
scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -drive if=none,id=drive-
scsi0-0-0-1,readonly=on -device scsi-cd,bus=scsi0.0,channel=0,scsi-
id=0,lun=1,drive=drive-scsi0-0-0-1,id=scsi0-0-0-1 -netdev
tap,fd=22,id=hostnet0,vhost=on,vhostfd=24 -device virtio-net-
pci,netdev=hostnet0,id=net0,mac=52:54:00:27:94:5d,bus=pci.2,addr=0x1
-chardev pty,id=charserial0 -device isa-
serial,chardev=charserial0,id=serial0 -chardev
spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus=virtio-
serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0
-device usb-tablet,id=input0,bus=usb.0,port=2 -spice
port=5900,addr=127.0.0.1,disable-ticketing,image-compression=off
,seamless-migration=on -device qxl-
vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1
-device intel-hda,id=sound0,bus=pci.2,addr=0x2 -device hda-
duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev
spicevmc,id=charredir0,name=usbredir -device usb-
redir,chardev=charredir0,id=redir0,bus=usb.0,port=3 -chardev
spicevmc,id=charredir1,name=usbredir -device usb-
redir,chardev=charredir1,id=redir1,bus=usb.0,port=4 -device usb-
host,hostbus=4,hostaddr=4,id=hostdev0,bus=usb.0,port=1 -device virtio-
balloon-pci,id=balloon0,bus=pci.2,addr=0x5 -msg timestamp=on

** Affects: qemu
     Importance: Undecided
         Status: New


** Tags: uas uasp usb usb-host xhci

** Attachment added: "win10-uas-fail.png"
   
https://bugs.launchpad.net/bugs/1648726/+attachment/4789413/+files/2016-12-09-165117_504x687_scrot.png

** Description changed:

- Split off from #1579306 as this is a distinct issue.
+ Split off from https://bugs.launchpad.net/qemu/+bug/1579306 as this is a
+ distinct issue.
  
  Physical USB storage devices that support the UAS protocol do not work
  correctly when passed through to Windows guests (I've only tested this
  with Windows 10 x64, build 1607).
  
  Passing through such a device results in the older BOT/MSC protocol
  being used:
  
  <See attachment win10-uas-fail.png>
  
  Using the same domain configuration with a Linux guest (tested with
  SystemRescueCD 4.8.0) works correctly:
  
  /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
-     |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=uas, 5000M
+     |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=uas, 5000M
  /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
  
- 
- In both cases, the VM was launched via libvirt, which generated the following 
command line:
+ In both cases, the VM was launched via libvirt, which generated the
+ following command line:
  
  /usr/bin/qemu-system-x86_64 -name guest=Win10-Edge-IE11,debug-threads=on
  -S -object
  secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-13-Win10
  -Edge-IE11/master-key.aes -machine
  pc-q35-2.7,accel=kvm,usb=off,vmport=off,dump-guest-core=off -cpu
  host,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff -m 4096 -realtime
  mlock=off -smp 8,sockets=1,cores=4,threads=2 -uuid 47c39707-088c-4edc-
  8b6a-a7856e09f43d -no-user-config -nodefaults -chardev
  socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-13-Win10-Edge-
  IE11/monitor.sock,server,nowait -mon
  chardev=charmonitor,id=monitor,mode=control -rtc
  base=localtime,driftfix=slew -global kvm-pit.lost_tick_policy=discard
  -no-hpet -no-shutdown -global ICH9-LPC.disable_s3=1 -global
  ICH9-LPC.disable_s4=1 -boot strict=on -device
  i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x1e -device pci-
  bridge,chassis_nr=2,id=pci.2,bus=pci.1,addr=0x0 -device nec-usb-
  xhci,id=usb,bus=pci.2,addr=0x6 -device virtio-scsi-
  pci,id=scsi0,bus=pci.2,addr=0x3 -device virtio-serial-pci,id=virtio-
  serial0,bus=pci.2,addr=0x4 -drive file=/home/jack/IMG/Win10-Edge-
  IE11.qcow2,format=qcow2,if=none,id=drive-scsi0-0-0-0,discard=unmap
  -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-
  scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -drive if=none,id=drive-
  scsi0-0-0-1,readonly=on -device scsi-cd,bus=scsi0.0,channel=0,scsi-
  id=0,lun=1,drive=drive-scsi0-0-0-1,id=scsi0-0-0-1 -netdev
  tap,fd=22,id=hostnet0,vhost=on,vhostfd=24 -device virtio-net-
  pci,netdev=hostnet0,id=net0,mac=52:54:00:27:94:5d,bus=pci.2,addr=0x1
  -chardev pty,id=charserial0 -device isa-
  serial,chardev=charserial0,id=serial0 -chardev
  spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus=virtio-
  serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0
  -device usb-tablet,id=input0,bus=usb.0,port=2 -spice
  port=5900,addr=127.0.0.1,disable-ticketing,image-compression=off
  ,seamless-migration=on -device qxl-
  
vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1
  -device intel-hda,id=sound0,bus=pci.2,addr=0x2 -device hda-
  duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev
  spicevmc,id=charredir0,name=usbredir -device usb-
  redir,chardev=charredir0,id=redir0,bus=usb.0,port=3 -chardev
  spicevmc,id=charredir1,name=usbredir -device usb-
  redir,chardev=charredir1,id=redir1,bus=usb.0,port=4 -device usb-
  host,hostbus=4,hostaddr=4,id=hostdev0,bus=usb.0,port=1 -device virtio-
  balloon-pci,id=balloon0,bus=pci.2,addr=0x5 -msg timestamp=on

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1648726

Title:
  Passthrough of UAS devices fails with Windows (10) guests

Status in QEMU:
  New

Bug description:
  Split off from https://bugs.launchpad.net/qemu/+bug/1579306 as this is
  a distinct issue.

  Physical USB storage devices that support the UAS protocol do not work
  correctly when passed through to Windows guests (I've only tested this
  with Windows 10 x64, build 1607).

  Passing through such a device results in the older BOT/MSC protocol
  being used:

  <See attachment win10-uas-fail.png>

  Using the same domain configuration with a Linux guest (tested with
  SystemRescueCD 4.8.0) works correctly:

  /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
      |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=uas, 5000M
  /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M

  In both cases, the VM was launched via libvirt, which generated the
  following command line:

  /usr/bin/qemu-system-x86_64 -name guest=Win10-Edge-IE11,debug-
  threads=on -S -object
  secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-13-Win10
  -Edge-IE11/master-key.aes -machine
  pc-q35-2.7,accel=kvm,usb=off,vmport=off,dump-guest-core=off -cpu
  host,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff -m 4096 -realtime
  mlock=off -smp 8,sockets=1,cores=4,threads=2 -uuid 47c39707-088c-4edc-
  8b6a-a7856e09f43d -no-user-config -nodefaults -chardev
  socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-13-Win10-Edge-
  IE11/monitor.sock,server,nowait -mon
  chardev=charmonitor,id=monitor,mode=control -rtc
  base=localtime,driftfix=slew -global kvm-pit.lost_tick_policy=discard
  -no-hpet -no-shutdown -global ICH9-LPC.disable_s3=1 -global
  ICH9-LPC.disable_s4=1 -boot strict=on -device
  i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x1e -device pci-
  bridge,chassis_nr=2,id=pci.2,bus=pci.1,addr=0x0 -device nec-usb-
  xhci,id=usb,bus=pci.2,addr=0x6 -device virtio-scsi-
  pci,id=scsi0,bus=pci.2,addr=0x3 -device virtio-serial-pci,id=virtio-
  serial0,bus=pci.2,addr=0x4 -drive file=/home/jack/IMG/Win10-Edge-
  IE11.qcow2,format=qcow2,if=none,id=drive-scsi0-0-0-0,discard=unmap
  -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-
  scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1 -drive if=none,id=drive-
  scsi0-0-0-1,readonly=on -device scsi-cd,bus=scsi0.0,channel=0,scsi-
  id=0,lun=1,drive=drive-scsi0-0-0-1,id=scsi0-0-0-1 -netdev
  tap,fd=22,id=hostnet0,vhost=on,vhostfd=24 -device virtio-net-
  pci,netdev=hostnet0,id=net0,mac=52:54:00:27:94:5d,bus=pci.2,addr=0x1
  -chardev pty,id=charserial0 -device isa-
  serial,chardev=charserial0,id=serial0 -chardev
  spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus
  =virtio-
  serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0
  -device usb-tablet,id=input0,bus=usb.0,port=2 -spice
  port=5900,addr=127.0.0.1,disable-ticketing,image-compression=off
  ,seamless-migration=on -device qxl-
  
vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1
  -device intel-hda,id=sound0,bus=pci.2,addr=0x2 -device hda-
  duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev
  spicevmc,id=charredir0,name=usbredir -device usb-
  redir,chardev=charredir0,id=redir0,bus=usb.0,port=3 -chardev
  spicevmc,id=charredir1,name=usbredir -device usb-
  redir,chardev=charredir1,id=redir1,bus=usb.0,port=4 -device usb-
  host,hostbus=4,hostaddr=4,id=hostdev0,bus=usb.0,port=1 -device virtio-
  balloon-pci,id=balloon0,bus=pci.2,addr=0x5 -msg timestamp=on

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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]