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

Re: USB-C 250GB SSD Passthrough fails to DomU Ubuntu



Hi All,

Is anyone aware if this a general limitation of DomU Or is there a way to convince DomU to expose USB host controllers with streams support ?

Thanks
Sudheer

On Tue, Aug 30, 2022 at 1:34 PM A Sudheer <asr7247@xxxxxxxxx> wrote:
Few more logs

From Dom0, did passthrough of two USB drives (32GB stick and 250GB USB SDD)
In DomU, 32GB driver got mounted but 250GB SSD fails to mount.
In DomU, "lsusb" shows both the drives but "usb-devices" shows only the 32GB drive.

Dom0 log:
amd@HOST:~$ sudo xl usb-list vm1
Devid  Type         BE  state usb-ver ports
0      devicemodel  0   0     3       15
  Port 1: Bus 003 Device 002
  Port 2: Bus 005 Device 002
  Port 3:
  Port 4:
  Port 5:
  Port 6:
  Port 7:
  Port 8:
  Port 9:
  Port 10:
  Port 11:
  Port 12:
  Port 13:
  Port 14:
  Port 15:
HOST:~$

DomU Log:
amd@VM1:~$ lsusb
Bus 003 Device 003: ID 0781:558c SanDisk Corp. Extreme Portable SSD
Bus 003 Device 002: ID 0781:5581 SanDisk Corp. Ultra
Bus 003 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd QEMU USB Tablet
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
amd@VM1:~$

amd@VM1:~$ usb-devices

T:  Bus=01 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=12  MxCh= 2
D:  Ver= 1.10 Cls=09(hub  ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0001 Rev=05.18
S:  Manufacturer=Linux 5.18.0-4460-amd+ uhci_hcd
S:  Product=UHCI Host Controller
S:  SerialNumber=0000:00:01.2
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   2 Ivl=255ms

T:  Bus=01 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=12  MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs=  1
P:  Vendor=0627 ProdID=0001 Rev=00.00
S:  Manufacturer=QEMU
S:  Product=QEMU USB Tablet
S:  SerialNumber=42
C:  #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr=100mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=03(HID  ) Sub=00 Prot=00 Driver=usbhid
E:  Ad=81(I) Atr=03(Int.) MxPS=   8 Ivl=10ms

T:  Bus=02 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=480 MxCh=15
D:  Ver= 2.00 Cls=09(hub  ) Sub=00 Prot=01 MxPS=64 #Cfgs=  1
P:  Vendor=1d6b ProdID=0002 Rev=05.18
S:  Manufacturer=Linux 5.18.0-4460-amd+ xhci-hcd
S:  Product=xHCI Host Controller
S:  SerialNumber=0000:00:04.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

T:  Bus=03 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#=  1 Spd=5000 MxCh=15
D:  Ver= 3.00 Cls=09(hub  ) Sub=00 Prot=03 MxPS= 9 #Cfgs=  1
P:  Vendor=1d6b ProdID=0003 Rev=05.18
S:  Manufacturer=Linux 5.18.0-4460-amd+ xhci-hcd
S:  Product=xHCI Host Controller
S:  SerialNumber=0000:00:04.0
C:  #Ifs= 1 Cfg#= 1 Atr=e0 MxPwr=0mA
I:  If#= 0 Alt= 0 #EPs= 1 Cls=09(hub  ) Sub=00 Prot=00 Driver=hub
E:  Ad=81(I) Atr=03(Int.) MxPS=   4 Ivl=256ms

T:  Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#=  2 Spd=5000 MxCh= 0
D:  Ver= 3.20 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 9 #Cfgs=  1
P:  Vendor=0781 ProdID=5581 Rev=01.00
S:  Manufacturer= USB
S:  Product= SanDisk 3.2Gen1
S:  SerialNumber=040143504c9a3bd4596082500826a11868845df4396ebc5cb2e33dd3071e3fd5505f000000000000000000003ca6a60b000d7c18815581071b2a7c33
C:  #Ifs= 1 Cfg#= 1 Atr=80 MxPwr=896mA
I:  If#= 0 Alt= 0 #EPs= 2 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=02(O) Atr=02(Bulk) MxPS=1024 Ivl=0ms
E:  Ad=81(I) Atr=02(Bulk) MxPS=1024 Ivl=0ms
amd@VM1:~$

amd@VM1:~$ sudo dmesg <for 250GB USB-C SSD>

[  247.071742] usb 3-2: new SuperSpeed USB device number 3 using xhci_hcd
[  247.097304] usb 3-2: New USB device found, idVendor=0781, idProduct=558c, bcdDevice=10.12
[  247.097314] usb 3-2: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[  247.097318] usb 3-2: Product: Extreme SSD
[  247.097321] usb 3-2: Manufacturer: SanDisk
[  247.097323] usb 3-2: SerialNumber: 31393430475A343030363932
[  247.101909] usb 3-2: USB controller 0000:00:04.0 does not support streams, which are required by the UAS driver.
[  247.101915] usb 3-2: Please try an other USB controller if you wish to use UAS.
[  247.101918] usb-storage 3-2:1.0: USB Mass Storage device detected
[  247.102710] scsi host3: usb-storage 3-2:1.0
[  269.131522] usb 3-2: reset SuperSpeed USB device number 3 using xhci_hcd

DomU dmesg log while adding USB controller and USB 32GB disk

[   94.494852] pci 0000:00:04.0: [1033:0194] type 00 class 0x0c0330
[   94.496278] pci 0000:00:04.0: reg 0x10: [mem 0x00000000-0x00003fff 64bit]
[   94.502161] pci 0000:00:04.0: BAR 0: assigned [mem 0xf1800000-0xf1803fff 64bit]
[   94.502981] pci 0000:00:04.0: enabling device (0000 -> 0002)
[   94.504005] xen: --> pirq=24 -> irq=32 (gsi=32)
[   94.514634] xhci_hcd 0000:00:04.0: xHCI Host Controller
[   94.514650] xhci_hcd 0000:00:04.0: new USB bus registered, assigned bus number 2
[   94.517840] xhci_hcd 0000:00:04.0: hcc params 0x00080001 hci version 0x100 quirks 0x0000000000000014
[   94.523559] usb usb2: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.18
[   94.523571] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   94.523575] usb usb2: Product: xHCI Host Controller
[   94.523579] usb usb2: Manufacturer: Linux 5.18.0-4460-amd+ xhci-hcd
[   94.523581] usb usb2: SerialNumber: 0000:00:04.0
[   94.523974] hub 2-0:1.0: USB hub found
[   94.524850] hub 2-0:1.0: 15 ports detected
[   94.529968] xhci_hcd 0000:00:04.0: xHCI Host Controller
[   94.529981] xhci_hcd 0000:00:04.0: new USB bus registered, assigned bus number 3
[   94.529988] xhci_hcd 0000:00:04.0: Host supports USB 3.0 SuperSpeed
[   94.530354] usb usb3: We don't know the algorithms for LPM for this host, disabling LPM.
[   94.530400] usb usb3: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.18
[   94.530404] usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   94.530407] usb usb3: Product: xHCI Host Controller
[   94.530410] usb usb3: Manufacturer: Linux 5.18.0-4460-amd+ xhci-hcd
[   94.530412] usb usb3: SerialNumber: 0000:00:04.0
[   94.530653] hub 3-0:1.0: USB hub found
[   94.531482] hub 3-0:1.0: 15 ports detected
[  157.522609] usb 3-1: new SuperSpeed USB device number 2 using xhci_hcd
[  157.548225] usb 3-1: New USB device found, idVendor=0781, idProduct=5581, bcdDevice= 1.00
[  157.548236] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  157.548239] usb 3-1: Product:  SanDisk 3.2Gen1
[  157.548242] usb 3-1: Manufacturer:  USB
[  157.548244] usb 3-1: SerialNumber: 040143504c9a3bd4596082500826a11868845df4396ebc5cb2e33dd3071e3fd5505f000000000000000000003ca6a60b000d7c18815581071b2a7c33
[  157.571419] usb-storage 3-1:1.0: USB Mass Storage device detected
[  157.571981] scsi host2: usb-storage 3-1:1.0
[  157.572125] usbcore: registered new interface driver usb-storage
[  157.577381] usbcore: registered new interface driver uas
[  158.581138] scsi 2:0:0:0: Direct-Access      USB      SanDisk 3.2Gen1 1.00 PQ: 0 ANSI: 6
[  158.581550] sd 2:0:0:0: Attached scsi generic sg0 type 0
[  158.584622] sd 2:0:0:0: [sda] 60088320 512-byte logical blocks: (30.8 GB/28.7 GiB)
[  158.590171] sd 2:0:0:0: [sda] Write Protect is off
[  158.590181] sd 2:0:0:0: [sda] Mode Sense: 43 00 00 00
[  158.593387] sd 2:0:0:0: [sda] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[  158.614589]  sda: sda1
[  158.627564] sd 2:0:0:0: [sda] Attached SCSI removable disk


On Tue, Aug 30, 2022 at 11:12 AM A Sudheer <asr7247@xxxxxxxxx> wrote:
Hi All

On XEN-4.16 with Ubuntu 22.04 Dom0 and HVM-DomU, I tried to do a USB mass storage device passthrough to DomU.
I followed the PVUSB method mentioned in https://wiki.xenproject.org/wiki/Xen_USB_Passthrough.

I am able to do passthrough for USB 2.0 and 3.x version 32/64 GB mass storage devices to DomU. 
Passthrough failed for "SanDisk 250GB SSD USB-C, USB 3.1" with below error. Able to access the SSD in Dom0.
Can someone help with what could be missing here.

Commands used:
host$ sudo xl usbctrl-attach vm1 version=3 ports=6
host$ sudo xl usbdev-attach vm1 hostbus=3 hostaddr=2

Error Log in DomU
VM1:~$ sudo dmesg
[  152.841566] usb 2-1: new SuperSpeed USB device number 2 using xhci_hcd
[  152.867164] usb 2-1: New USB device found, idVendor=0781, idProduct=558c, bcdDevice=10.12
[  152.867173] usb 2-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[  152.867177] usb 2-1: Product: Extreme SSD
[  152.867179] usb 2-1: Manufacturer: SanDisk
[  152.867182] usb 2-1: SerialNumber: 31393430475A343030363932
[  152.899103] usb 2-1: USB controller 0000:00:04.0 does not support streams, which are required by the UAS driver.
[  152.899110] usb 2-1: Please try an other USB controller if you wish to use UAS.
[  152.899113] usb-storage 2-1:1.0: USB Mass Storage device detected
[  152.902033] scsi host2: usb-storage 2-1:1.0
[  152.902174] usbcore: registered new interface driver usb-storage
[  152.908928] usbcore: registered new interface driver uas
[  174.933399] usb 2-1: reset SuperSpeed USB device number 2 using xhci_hcd

Thanks
Sudheer

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.