Bug 216564 - emulators/virtualbox-ose: 5.1.14_2 USB passthrough does not work
Summary: emulators/virtualbox-ose: 5.1.14_2 USB passthrough does not work
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Many People
Assignee: Virtualbox Team (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-01-29 02:32 UTC by Slawomir Wojciech Wojtczak
Modified: 2017-02-17 21:38 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (vbox)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Slawomir Wojciech Wojtczak 2017-01-29 02:32:01 UTC
After USB stick is connected to USB 3.0 port on ThinkPad W530 and clicking USB Passthru:

Virtualbox Error:
==========================================================
Failed to attach the USB device vendor 0x13fe USB DISK 3.0 to the virtual machine ASD.

Failed to create a proxy device for the USB device. (Error: VERR_PDM_NO_USB_PORTS).

Result Code: NS_ERROR_FAILURE (0x80004005)
Component: ConsoleWrap
Interface: IConsole {872da645-4a9b-1727-bee2-5585105b9eed}
==========================================================

After USB stick is connected to USB 2.0 port on ThinkPad W530 and clicking USB Passthru:

(No direct Virtualbox fail but the device does not appears on Virtualbox VM).



About USB 2.0/3.0 ... I do not expect Virtualbox to have working USB passthru at 2.0 or 3.0 speed, I just need its basic 1.1 speed that is available in open source version.

But that does not work on FreeBSD.

I was just showing that no matter if I attach an USB dongle thru 2.0 or 3.0 port it still does not work.

Last time I checked FreeBSD has different drivers for 2.0 and 3.0 USB so that information COULD help to narrow the problem.
Comment 1 Hans Petter Selasky freebsd_committer freebsd_triage 2017-01-29 11:26:37 UTC
Hi,

Can you show FreeBSD dmesg?

Can you show what speed the USB DISK 3.0 is enumerated at?

Have you grepped in the VBOX source code for VERR_PDM_NO_USB_PORTS and what are the conditions for this error?

--HPS
Comment 2 Slawomir Wojciech Wojtczak 2017-01-29 21:55:43 UTC
This is that return value in source.

/usr/ports/obj/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.1.14/src % grep -r VERR_PDM_NO_USB_PORTS .
./VBox/VMM/VMMR3/PDMUsb.cpp: *          VERR_PDM_NO_USB_HUBS or VERR_PDM_NO_USB_PORTS on failure.
./VBox/VMM/VMMR3/PDMUsb.cpp:    return VERR_PDM_NO_USB_PORTS;

/usr/ports/obj/usr/ports/emulators/virtualbox-ose/work/VirtualBox-5.1.14/src % grep -B 30 'return VERR_PDM_NO_USB_PORTS' ./VBox/VMM/VMMR3/PDMUsb.cpp
/**
 * Locates a suitable hub for the specified kind of device.
 *
 * @returns VINF_SUCCESS and *ppHub on success.
 *          VERR_PDM_NO_USB_HUBS or VERR_PDM_NO_USB_PORTS on failure.
 * @param   pVM             The cross context VM structure.
 * @param   iUsbVersion     The USB device version.
 * @param   ppHub           Where to store the pointer to the USB hub.
 */
static int pdmR3UsbFindHub(PVM pVM, uint32_t iUsbVersion, PPDMUSBHUB *ppHub)
{
    *ppHub = NULL;
    if (!pVM->pdm.s.pUsbHubs)
        return VERR_PDM_NO_USB_HUBS;

    for (PPDMUSBHUB pCur = pVM->pdm.s.pUsbHubs; pCur; pCur = pCur->pNext)
        if (pCur->cAvailablePorts > 0)
        {
            /* First check for an exact match. */
            if (pCur->fVersions & iUsbVersion)
            {
                *ppHub = pCur;
                break;
            }
            /* For high-speed USB 2.0 devices only, allow USB 1.1 fallback. */
            if ((iUsbVersion & VUSB_STDVER_20) && (pCur->fVersions == VUSB_STDVER_11))
                *ppHub = pCur;
        }
    if (*ppHub)
        return VINF_SUCCESS;
    return VERR_PDM_NO_USB_PORTS;
Comment 3 Hans Petter Selasky freebsd_committer freebsd_triage 2017-01-30 11:12:46 UTC
Hi,

In order to use your device, you must ensure it enumerates at USB 2.0 or USB 1.0 speed in the host. Else VirtualBOX cannot forward it to the VM instance without the XHCI extension pack.


> After USB stick is connected to USB 2.0 port on ThinkPad W530 and clicking USB > Passthru:
> (No direct Virtualbox fail but the device does not appears on Virtualbox VM).

Can you show dmesg? And are you using the latest VirtualBox port?

--HPS
Comment 4 Slawomir Wojciech Wojtczak 2017-01-30 11:25:08 UTC
(In reply to Hans Petter Selasky from comment #3)

> Can you show dmesg?

Here.

12:22|w530|vermaden ~ % dmesg
Copyright (c) 1992-2016 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 10.3-RELEASE-p11 #0: Mon Oct 24 18:49:24 UTC 2016
    root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64
FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512
CPU: Intel(R) Core(TM) i7-3630QM CPU @ 2.40GHz (2394.61-MHz K8-class CPU)
  Origin="GenuineIntel"  Id=0x306a9  Family=0x6  Model=0x3a  Stepping=9
  Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
  Features2=0x7fbae3bf<SSE3,PCLMULQDQ,DTES64,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND>
  AMD Features=0x28100800<SYSCALL,NX,RDTSCP,LM>
  AMD Features2=0x1<LAHF>
  Structured Extended Features=0x281<FSGSBASE,SMEP,ERMS>
  XSAVE Features=0x1<XSAVEOPT>
  VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
  TSC: P-state invariant, performance statistics
real memory  = 17179869184 (16384 MB)
avail memory = 16215502848 (15464 MB)
Event timer "LAPIC" quality 600
ACPI APIC Table: <LENOVO TP-G5   >
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
FreeBSD/SMP: 1 package(s) x 4 core(s)
 cpu0 (BSP): APIC ID:  0
 cpu1 (AP): APIC ID:  2
 cpu2 (AP): APIC ID:  4
 cpu3 (AP): APIC ID:  6
random: <Software, Yarrow> initialized
ioapic0 <Version 2.0> irqs 0-23 on motherboard
kbd1 at kbdmux0
cryptosoft0: <software crypto> on motherboard
acpi0: <LENOVO TP-G5> on motherboard
acpi_ec0: <Embedded Controller: GPE 0x11, ECDT> port 0x62,0x66 on acpi0
acpi0: Power Button (fixed)
cpu0: <ACPI CPU> on acpi0
cpu1: <ACPI CPU> on acpi0
cpu2: <ACPI CPU> on acpi0
cpu3: <ACPI CPU> on acpi0
attimer0: <AT timer> port 0x40-0x43 irq 0 on acpi0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
hpet0: <High Precision Event Timer> iomem 0xfed00000-0xfed003ff on acpi0
Timecounter "HPET" frequency 14318180 Hz quality 950
Event timer "HPET" frequency 14318180 Hz quality 550
Event timer "HPET1" frequency 14318180 Hz quality 440
Event timer "HPET2" frequency 14318180 Hz quality 440
Event timer "HPET3" frequency 14318180 Hz quality 440
Event timer "HPET4" frequency 14318180 Hz quality 440
atrtc0: <AT realtime clock> port 0x70-0x71 irq 8 on acpi0
Event timer "RTC" frequency 32768 Hz quality 0
Timecounter "ACPI-fast" frequency 3579545 Hz quality 900
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
acpi_lid0: <Control Method Lid Switch> on acpi0
acpi_button0: <Sleep Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pcib1: <ACPI PCI-PCI bridge> irq 16 at device 1.0 on pci0
pci1: <ACPI PCI bus> on pcib1
vgapci0: <VGA-compatible display> port 0x5000-0x507f mem 0xf2000000-0xf2ffffff,0xe0000000-0xefffffff,0xf0000000-0xf1ffffff irq 16 at device 0.0 on pci1
vgapci0: Boot video device
hdac0: <NVIDIA (0x0e1b) HDA Controller> mem 0xf3000000-0xf3003fff irq 17 at device 0.1 on pci1
xhci0: <Intel Panther Point USB 3.0 controller> mem 0xf5320000-0xf532ffff irq 16 at device 20.0 on pci0
xhci0: 32 bytes context size, 64-bit DMA
xhci0: Port routing mask set to 0xffffffff
usbus0 on xhci0
pci0: <simple comms> at device 22.0 (no driver attached)
em0: <Intel(R) PRO/1000 Network Connection 7.6.1-k> port 0x6040-0x605f mem 0xf5300000-0xf531ffff,0xf533b000-0xf533bfff irq 20 at device 25.0 on pci0
em0: Using an MSI interrupt
em0: Ethernet address: <MAC>
ehci0: <Intel Panther Point USB 2.0 controller> mem 0xf533a000-0xf533a3ff irq 16 at device 26.0 on pci0
usbus1: EHCI version 1.0
usbus1 on ehci0
hdac1: <Intel Panther Point HDA Controller> mem 0xf5330000-0xf5333fff irq 22 at device 27.0 on pci0
pcib2: <ACPI PCI-PCI bridge> irq 16 at device 28.0 on pci0
pci2: <ACPI PCI bus> on pcib2
sdhci_pci0: <RICOH R5CE822 SD> mem 0xf4a01000-0xf4a010ff irq 16 at device 0.0 on pci2
sdhci_pci0: 1 slot(s) allocated
mmc0: <MMC/SD bus> on sdhci_pci0
pci2: <serial bus, FireWire> at device 0.3 (no driver attached)
pcib3: <ACPI PCI-PCI bridge> irq 17 at device 28.1 on pci0
pci3: <ACPI PCI bus> on pcib3
iwn0: <Intel Centrino Ultimate-N 6300> mem 0xf4900000-0xf4901fff irq 17 at device 0.0 on pci3
pcib4: <ACPI PCI-PCI bridge> irq 18 at device 28.2 on pci0
pci4: <ACPI PCI bus> on pcib4
ehci1: <Intel Panther Point USB 2.0 controller> mem 0xf5339000-0xf53393ff irq 23 at device 29.0 on pci0
usbus2: EHCI version 1.0
usbus2 on ehci1
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
ahci0: <Intel Panther Point AHCI SATA controller> port 0x6068-0x606f,0x6074-0x6077,0x6060-0x6067,0x6070-0x6073,0x6020-0x603f mem 0xf5338000-0xf53387ff irq 19 at device 31.2 on pci0
ahci0: AHCI v1.30 with 6 6Gbps ports, Port Multiplier not supported
ahcich0: <AHCI channel> at channel 0 on ahci0
ahcich1: <AHCI channel> at channel 1 on ahci0
ahcich4: <AHCI channel> at channel 4 on ahci0
ahciem0: <AHCI enclosure management bridge> on ahci0
acpi_tz0: <Thermal Zone> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model Generic PS/2 mouse, device ID 0
battery0: <ACPI Control Method Battery> on acpi0
acpi_acad0: <AC Adapter> on acpi0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
ppc0: cannot reserve I/O port range
est0: <Enhanced SpeedStep Frequency Control> on cpu0
est1: <Enhanced SpeedStep Frequency Control> on cpu1
est2: <Enhanced SpeedStep Frequency Control> on cpu2
est3: <Enhanced SpeedStep Frequency Control> on cpu3
ZFS filesystem version: 5
ZFS storage pool version: features support (5000)
Timecounters tick every 10.000 msec
hdacc0: <NVIDIA (0x0042) HDA CODEC> at cad 0 on hdac0
hdaa0: <NVIDIA (0x0042) Audio Function Group> at nid 1 on hdacc0
pcm0: <NVIDIA (0x0042) (HDMI/DP 8ch)> at nid 5 on hdaa0
pcm1: <NVIDIA (0x0042) (HDMI/DP 8ch)> at nid 6 on hdaa0
pcm2: <NVIDIA (0x0042) (HDMI/DP 8ch)> at nid 7 on hdaa0
hdacc1: <Realtek ALC269 HDA CODEC> at cad 0 on hdac1
hdaa1: <Realtek ALC269 Audio Function Group> at nid 1 on hdacc1
pcm3: <Realtek ALC269 (Analog 2.0+HP/2.0)> at nid 20,21 and 24 on hdaa1
pcm4: <Realtek ALC269 (Internal Analog Mic)> at nid 18 on hdaa1
random: unblocking device.
usbus0: 5.0Gbps Super Speed USB v3.0
usbus1: 480Mbps High Speed USB v2.0
usbus2: 480Mbps High Speed USB v2.0
ugen2.1: <Intel> at usbus2
uhub0: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus2
ugen1.1: <Intel> at usbus1
uhub1: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1
ugen0.1: <0x8086> at usbus0
uhub2: <0x8086 XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
ses0 at ahciem0 bus 0 scbus3 target 0 lun 0
ses0: <AHCI SGPIO Enclosure 1.00 0001> SEMB S-E-S 2.00 device
ses0: SEMB SES Device
ada0 at ahcich0 bus 0 scbus0 target 0 lun 0
ada0: <SAMSUNG MZ7TD256HAFV-000L7 DXT04L6Q> ACS-2 ATA SATA 3.x device
ada0: Serial Number <SN>
ada0: 600.000MB/s transfers (SATA 3.x, UDMA6, PIO 512bytes)
ada0: Command Queueing enabled
ada0: 244198MB (500118192 512 byte sectors)
ada0: Previously was known as ad4
ada1 at ahcich1 bus 0 scbus1 target 0 lun 0
ada1: <ST1000LM024 HN-M101MBB 2AR10001> ATA8-ACS SATA 2.x device
ada1: Serial Number <SN>
ada1: 300.000MB/s transfers (SATA 2.x, UDMA5, PIO 8192bytes)
ada1: Command Queueing enabled
ada1: 953869MB (1953525168 512 byte sectors)
ada1: Previously was known as ad6
mmcsd0: 16GB <SDHC SE16G 8.0 SN <SN> MFG 04/2014 by 3 SD> at mmc0 50.0MHz/4bit/65535-block
SMP: AP CPU #2 Launched!
SMP: AP CPU #1 Launched!
SMP: AP CPU #3 Launched!
Timecounter "TSC-low" frequency 1197306622 Hz quality 1000
uhub2: 8 ports with 8 removable, self powered
ugen0.2: <Lenovo> at usbus0
uhub1: 3 ports with 3 removable, self powered
uhub0: 3 ports with 3 removable, self powered
ugen2.2: <vendor 0x8087> at usbus2
uhub3: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus2
ugen1.2: <vendor 0x8087> at usbus1
uhub4: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus1
uhub4: 6 ports with 6 removable, self powered
GEOM_ELI: Device ada0p3.eli created.
GEOM_ELI: Encryption: AES-CBC 128
GEOM_ELI:     Crypto: software
uhub3: 8 ports with 8 removable, self powered
Root mount waiting for: usbus2 usbus1
ugen1.3: <Auth> at usbus1
ugen2.3: <vendor 0x17ef> at usbus2
ukbd0: <vendor 0x17ef Lenovo USB Receiver, class 0/0, rev 2.00/1.22, addr 3> on usbus2
kbd2 at ukbd0
ugen1.4: <Broadcom Corp> at usbus1
Root mount waiting for: usbus2 usbus1
ugen2.4: <vendor 0x0765> at usbus2
ugen1.5: <Ricoh Company Ltd.> at usbus1
Trying to mount root from zfs:sys/ROOT/release.10.3 []...
nvidia0: <Quadro K2000M> on vgapci0
vgapci0: child nvidia0 requested pci_enable_io
vgapci0: child nvidia0 requested pci_enable_io
aesni0: <AES-CBC,AES-XTS> on motherboard
fuse-freebsd: version 0.4.4, FUSE ABI 7.8
coretemp0: <CPU On-Die Thermal Sensors> on cpu0
coretemp1: <CPU On-Die Thermal Sensors> on cpu1
coretemp2: <CPU On-Die Thermal Sensors> on cpu2
coretemp3: <CPU On-Die Thermal Sensors> on cpu3
Cuse4BSD v0.1.36 @ /dev/cuse
wlan0: Ethernet address: <MAC>
umodem0: <H5321 gw Mobile Broadband Modem> on usbus0
umodem0: data interface 2, has CM over data, has break
umodem1: <H5321 gw Mobile Broadband Data Modem> on usbus0
umodem1: data interface 4, has CM over data, has break
umodem2: <H5321 gw Mobile Broadband GPS Port> on usbus0
umodem2: data interface 10, has CM over data, has break
cdce0: <Ericsson H5321 gw> on usbus0
ue0: <USB Ethernet> on cdce0
ue0: Ethernet address: <MAC>
ums0: <vendor 0x17ef Lenovo USB Receiver, class 0/0, rev 2.00/1.22, addr 3> on usbus2
ums0: 5 buttons and [XYZT] coordinates ID=0
uhid0: <vendor 0x17ef Lenovo USB Receiver, class 0/0, rev 2.00/1.22, addr 3> on usbus2
ubt0: <Broadcom Corp BCM20702A0, rev 2.00/1.12, addr 4> on usbus1
uhid1: <vendor 0x0765 product 0x5010, class 0/0, rev 2.00/0.00, addr 4> on usbus2
WARNING: attempt to domain_add(bluetooth) after domainfinalize()
WARNING: attempt to domain_add(netgraph) after domainfinalize()
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Error: Field [TBF3] at 389120 exceeds Buffer [NULL] size 368640 (bits) (20150515/dsopcode-247)
ACPI Error: Method parse/execution failed [\134_SB_.PCI0.PEG_.VID_.GETB] (Node 0xfffff800084fa300), AE_AML_BUFFER_LIMIT (20150515/psparse-552)
ACPI Error: Method parse/execution failed [\134_SB_.PCI0.PEG_.VID_._ROM] (Node 0xfffff800084fa340), AE_AML_BUFFER_LIMIT (20150515/psparse-552)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
ACPI Warning: \134_SB_.PCI0.PEG_.VID_._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20150515/nsarguments-97)
wlan0: link state changed to UP
vboxnet0: Ethernet address: <MAC>
vboxdrv: ffffffff8290e020 VMMR0.r0
vboxdrv: ffffffff82a0b020 VBoxDDR0.r0
mmc0: detached
mmc0: <MMC/SD bus> on sdhci_pci0
mmc0: No compatible cards found on bus
mmc0: detached
mmc0: <MMC/SD bus> on sdhci_pci0
mmcsd0: 64GB <SDHC SL64G 8.0 SN <SN> MFG 11/2015 by 3 SD> at mmc0 50.0MHz/4bit/65535-block
pid 16356 (caja), uid 1000: exited on signal 6
mmc0: detached
pid 82791 (rawtherapee), uid 1000: exited on signal 6
pid 84891 (rawtherapee), uid 1000: exited on signal 6
iwn0: iwn_intr: fatal firmware error
firmware error log:
  error type      = "NMI_INTERRUPT_WDG" (0x00000004)
  program counter = 0x000006B4
  source line     = 0x0001C560
  error data      = 0x0000000202230000
  branch link     = 0x0000067A0000071A
  interrupt link  = 0x0000153200006874
  time            = 4151907338
driver status:
  tx ring  0: qid=0  cur=177 queued=0  
  tx ring  1: qid=1  cur=0   queued=0  
  tx ring  2: qid=2  cur=0   queued=0  
  tx ring  3: qid=3  cur=10  queued=0  
  tx ring  4: qid=4  cur=205 queued=0  
  tx ring  5: qid=5  cur=0   queued=0  
  tx ring  6: qid=6  cur=0   queued=0  
  tx ring  7: qid=7  cur=0   queued=0  
  tx ring  8: qid=8  cur=0   queued=0  
  tx ring  9: qid=9  cur=0   queued=0  
  tx ring 10: qid=10 cur=242 queued=1  
  tx ring 11: qid=11 cur=0   queued=0  
  tx ring 12: qid=12 cur=0   queued=0  
  tx ring 13: qid=13 cur=0   queued=0  
  tx ring 14: qid=14 cur=0   queued=0  
  tx ring 15: qid=15 cur=0   queued=0  
  tx ring 16: qid=16 cur=0   queued=0  
  tx ring 17: qid=17 cur=0   queued=0  
  tx ring 18: qid=18 cur=0   queued=0  
  tx ring 19: qid=19 cur=0   queued=0  
  rx ring: cur=24
ifa_del_loopback_route: deletion failed: 48
wlan0: link state changed to DOWN
wlan0: Ethernet address: <MAC>
wlan0: link state changed to UP
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
CPU0: local APIC error 0x80
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
iwn0: null_update_chw: need callback
CPU0: local APIC error 0x80
pid 27163 (rawtherapee), uid 1000: exited on signal 6
pid 6323 (rawtherapee), uid 1000: exited on signal 6
pid 79142 (rawtherapee), uid 1000: exited on signal 6
CPU0: local APIC error 0x80
uhub2: at usbus0, port 1, addr 1 (disconnected)
ugen0.2: <Lenovo> at usbus0 (disconnected)
umodem0: at uhub2, port 4, addr 1 (disconnected)
umodem1: at uhub2, port 4, addr 1 (disconnected)
cdce0: at uhub2, port 4, addr 1 (disconnected)
umodem2: at uhub2, port 4, addr 1 (disconnected)
uhub1: at usbus1, port 1, addr 1 (disconnected)
ugen1.2: <vendor 0x8087> at usbus1 (disconnected)
uhub4: at uhub1, port 1, addr 2 (disconnected)
ugen1.3: <Auth> at usbus1 (disconnected)
ugen1.4: <Broadcom Corp> at usbus1 (disconnected)
ubt0: at uhub4, port 4, addr 4 (disconnected)
ugen1.5: <Ricoh Company Ltd.> at usbus1 (disconnected)
wlan0: link state changed to DOWN
uhub0: at usbus2, port 1, addr 1 (disconnected)
ugen2.2: <vendor 0x8087> at usbus2 (disconnected)
uhub3: at uhub0, port 1, addr 2 (disconnected)
ugen2.3: <vendor 0x17ef> at usbus2 (disconnected)
ukbd0: at uhub3, port 5, addr 3 (disconnected)
ums0: at uhub3, port 5, addr 3 (disconnected)
uhid0: at uhub3, port 5, addr 3 (disconnected)
ugen2.4: <vendor 0x0765> at usbus2 (disconnected)
uhid1: at uhub3, port 7, addr 4 (disconnected)
acpi0: cleared fixed power button status
uhub0: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1
uhub1: <Intel EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus2
xhci0: Port routing mask set to 0xffffffff
uhub2: <0x8086 XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
em0: link state changed to UP
uhub2: 8 ports with 8 removable, self powered
uhub0: 3 ports with 3 removable, self powered
uhub1: 3 ports with 3 removable, self powered
ugen0.2: <Lenovo> at usbus0
umodem0: <H5321 gw Mobile Broadband Modem> on usbus0
umodem0: data interface 2, has CM over data, has break
umodem1: <H5321 gw Mobile Broadband Data Modem> on usbus0
umodem1: data interface 4, has CM over data, has break
cdce0: <Ericsson H5321 gw> on usbus0
ue0: <USB Ethernet> on cdce0
ue0: Ethernet address: <MAC>
umodem2: <H5321 gw Mobile Broadband GPS Port> on usbus0
umodem2: data interface 10, has CM over data, has break
ugen1.2: <vendor 0x8087> at usbus1
uhub3: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus1
ugen2.2: <vendor 0x8087> at usbus2
uhub4: <vendor 0x8087 product 0x0024, class 9/0, rev 2.00/0.00, addr 2> on usbus2
uhub3: 6 ports with 6 removable, self powered
uhub4: 8 ports with 8 removable, self powered
ugen1.3: <Auth> at usbus1
ugen2.3: <vendor 0x17ef> at usbus2
ukbd0: <vendor 0x17ef Lenovo USB Receiver, class 0/0, rev 2.00/1.22, addr 3> on usbus2
kbd2 at ukbd0
ums0: <vendor 0x17ef Lenovo USB Receiver, class 0/0, rev 2.00/1.22, addr 3> on usbus2
ums0: 5 buttons and [XYZT] coordinates ID=0
uhid0: <vendor 0x17ef Lenovo USB Receiver, class 0/0, rev 2.00/1.22, addr 3> on usbus2
ugen1.4: <Broadcom Corp> at usbus1
ubt0: <Broadcom Corp BCM20702A0, rev 2.00/1.12, addr 4> on usbus1
ugen2.4: <vendor 0x0765> at usbus2
uhid1: <vendor 0x0765 product 0x5010, class 0/0, rev 2.00/0.00, addr 4> on usbus2
ugen1.5: <Ricoh Company Ltd.> at usbus1
ugen2.5: <vendor 0x17ef> at usbus2
uhub5: <vendor 0x17ef product 0x100a, class 9/0, rev 2.00/0.00, addr 5> on usbus2
uhub5: MTT enabled
uhub5: 7 ports with 7 removable, self powered
ugen2.6: <vendor 0x0424> at usbus2
uhub6: <vendor 0x0424 product 0x2514, class 9/0, rev 2.00/b.b3, addr 6> on usbus2
uhub6: MTT enabled
uhub6: 4 ports with 4 removable, self powered
ugen2.7: <CHICONY> at usbus2
ukbd1: <CHICONY USB NetVista Full Width Keyboard, class 0/0, rev 1.10/1.02, addr 7> on usbus2
kbd3 at ukbd1
pid 1795 (bamfdaemon), uid 1000: exited on signal 6
ifa_del_loopback_route: deletion failed: 48
vboxdrv: ffffffff8290e020 VMMR0.r0
vboxdrv: ffffffff82a0b020 VBoxDDR0.r0


// ATTACHED TO 3.0 PORT

12:23|w530|vermaden ~ % dmesg|tail
ugen0.3: <vendor 0x13fe> at usbus0
umass0: <vendor 0x13fe USB DISK 3.0, class 0/0, rev 3.00/1.10, addr 2> on usbus0
umass0:  SCSI over Bulk-Only; quirks = 0x8100
umass0:4:0:-1: Attached to scbus4
da0 at umass-sim0 bus 0 scbus4 target 0 lun 0
da0: < USB DISK 3.0 PMAP> Removable Direct Access SPC-4 SCSI device
da0: Serial Number EC0068F1F89A7D02
da0: 400.000MB/s transfers
da0: 14786MB (30283008 512 byte sectors)
da0: quirks=0x3<NO_SYNC_CACHE,NO_6_BYTE>

12:23|w530|vermaden ~ % usbconfig 
ugen2.1: <EHCI root HUB Intel> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.1: <EHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.1: <XHCI root HUB 0x8086> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen0.2: <H5321 gw Lenovo> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (0mA)
ugen1.2: <product 0x0024 vendor 0x8087> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen2.2: <product 0x0024 vendor 0x8087> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.3: <Biometric Coprocessor Auth> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen2.3: <Lenovo USB Receiver vendor 0x17ef> at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen1.4: <BCM20702A0 Broadcom Corp> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (0mA)
ugen2.4: <product 0x5010 vendor 0x0765> at usbus2, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (100mA)
ugen1.5: <Integrated Camera Ricoh Company Ltd.> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (200mA)
ugen2.5: <product 0x100a vendor 0x17ef> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (2mA)
ugen2.6: <product 0x2514 vendor 0x0424> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (2mA)
ugen2.7: <USB NetVista Full Width Keyboard CHICONY> at usbus2, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (100mA)
ugen0.3: <USB DISK 3.0 vendor 0x13fe> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=ON (224mA) <== ITS THIS ONE




// ATTACHED TO 2.0 PORT

12:24|w530|vermaden ~ % dmesg|tail -12
da0: < USB DISK 3.0 PMAP> s/n EC0068F1F89A7D02 detached
(da0:umass-sim0:0:0:0): Periph destroyed
ugen1.6: <vendor 0x13fe> at usbus1
umass0: <vendor 0x13fe USB DISK 3.0, class 0/0, rev 2.10/1.10, addr 6> on usbus1
umass0:  SCSI over Bulk-Only; quirks = 0x8100
umass0:4:0:-1: Attached to scbus4
da0 at umass-sim0 bus 0 scbus4 target 0 lun 0
da0: < USB DISK 3.0 PMAP> Removable Direct Access SPC-4 SCSI device
da0: Serial Number EC0068F1F89A7D02
da0: 40.000MB/s transfers
da0: 14786MB (30283008 512 byte sectors)
da0: quirks=0x3<NO_SYNC_CACHE,NO_6_BYTE>

12:24|w530|vermaden ~ % usbconfig     
ugen2.1: <EHCI root HUB Intel> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.1: <EHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen0.1: <XHCI root HUB 0x8086> at usbus0, cfg=0 md=HOST spd=SUPER (5.0Gbps) pwr=SAVE (0mA)
ugen0.2: <H5321 gw Lenovo> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (0mA)
ugen1.2: <product 0x0024 vendor 0x8087> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen2.2: <product 0x0024 vendor 0x8087> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (0mA)
ugen1.3: <Biometric Coprocessor Auth> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen2.3: <Lenovo USB Receiver vendor 0x17ef> at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (100mA)
ugen1.4: <BCM20702A0 Broadcom Corp> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (0mA)
ugen2.4: <product 0x5010 vendor 0x0765> at usbus2, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (100mA)
ugen1.5: <Integrated Camera Ricoh Company Ltd.> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (200mA)
ugen2.5: <product 0x100a vendor 0x17ef> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (2mA)
ugen2.6: <product 0x2514 vendor 0x0424> at usbus2, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=SAVE (2mA)
ugen2.7: <USB NetVista Full Width Keyboard CHICONY> at usbus2, cfg=0 md=HOST spd=LOW (1.5Mbps) pwr=ON (100mA)
ugen1.6: <USB DISK 3.0 vendor 0x13fe> at usbus1, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (498mA) <== ITS THIS ONE




> In order to use your device, you must ensure it enumerates at USB 2.0 or USB 1.0 speed in the host.
> Else VirtualBOX cannot forward it to the VM instance without the XHCI extension pack.

Shouldn't FreeBSD have a patch that also 3.0 devices should be possible to passthrough same as 2.0 devices?



> And are you using the latest VirtualBox port?

As in summary, 5.1.14_2, which means YES, its the latest version.
Comment 5 Hans Petter Selasky freebsd_committer freebsd_triage 2017-01-30 12:10:46 UTC
> Shouldn't FreeBSD have a patch that also 3.0 devices should be possible to passthrough same as 2.0 devices?

No, this is in the generic VBOX USB code. Actually you see the USB 2.0 to USB 1.0 fallback in the code snippet you pasted.

Can you check if you enabled OHCI and disabled EHCI and XHCI in the USB configuration panel for VirtualBOX?

Also what does the dmesg say inside the virtual machine about USB devices?

Could you boot one of the Live FreeBSD-12-current ISO's from VirtualBox and simply run "usbconfig" to see if your disk is detected or not?

--HPS
Comment 6 Hans Petter Selasky freebsd_committer freebsd_triage 2017-01-30 12:15:42 UTC
Your dmesg looks OK for USB 2.0 and USB 3.0. I've asked a VBox developer if fallback from USB 3.0 to USB 1.0 can be added.

--HPS
Comment 7 Slawomir Wojciech Wojtczak 2017-02-17 10:45:17 UTC
Any feedback from the VirtualBox developer?
Comment 8 Hans Petter Selasky freebsd_committer freebsd_triage 2017-02-17 10:54:52 UTC
Fallback is not possible, due to wMaxpacketSize differences.
Comment 9 Slawomir Wojciech Wojtczak 2017-02-17 11:30:46 UTC
What about 2.0 ports then, and 3.0 devices that are attached to 2.0 USB ports, these should work (and do not)?
Comment 10 Hans Petter Selasky freebsd_committer freebsd_triage 2017-02-17 11:38:55 UTC
You'll need to ask the VBOX devs to release the EHCI/XHCI support (extension pack) for FreeBSD or use a USB 1.0 HUB between your devices.
Comment 11 Slawomir Wojciech Wojtczak 2017-02-17 12:30:40 UTC
(In reply to Hans Petter Selasky from comment #10)

But that worked in the past (USB 2.0 ports/devices where fully usable in VirtualBox as USB 1.1 devices).

Why it does not work now?
Comment 12 Hans Petter Selasky freebsd_committer freebsd_triage 2017-02-17 12:58:01 UTC
Because USB core in virtualbox has changed. You can ask at the VBOX developers list about this:

vbox-dev@virtualbox.org


--HPS
Comment 13 Slawomir Wojciech Wojtczak 2017-02-17 18:45:41 UTC
(In reply to Hans Petter Selasky from comment #12)

Ok, then close the bug.

If its not possible to achieve then its pointless to have this as 'open'.