Jump to content

[Help] Issue after using PCI pass trough with USB


peter_sm

Recommended Posts

Peter, here's

lsusb -t

Right after boot

/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 3: Dev 3, If 0, Class=Audio, Driver=, 12M
        |__ Port 3: Dev 3, If 1, Class=Audio, Driver=, 12M
        |__ Port 3: Dev 3, If 2, Class=Audio, Driver=, 12M
        |__ Port 3: Dev 3, If 3, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
    |__ Port 3: Dev 3, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 2: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M

After VM using passthrough of controller started and stopped

/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
    |__ Port 3: Dev 3, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 480M
    |__ Port 2: Dev 2, If 0, Class=Human Interface Device, Driver=usbhid, 1.5M

 

lspci -k

Right after boot

00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (rev 09)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ivb_uncore
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
        Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (rev 09)
        Subsystem: ASRock Incorporation Device 0152
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: xhci_hcd
00:16.0 Communication controller: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ehci-pci
00:1c.0 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
        Kernel driver in use: pcieport
00:1c.4 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 5 (rev c4)
        Kernel driver in use: pcieport
00:1c.5 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 6 (rev c4)
        Kernel driver in use: pcieport
00:1c.6 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 7 (rev c4)
        Kernel driver in use: pcieport
00:1c.7 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 8 (rev c4)
        Kernel driver in use: pcieport
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: pci-stub
00:1f.0 ISA bridge: Intel Corporation H77 Express Chipset LPC Controller (rev 04)
        Subsystem: ASRock Incorporation Device 1e4a
00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ahci
        Kernel modules: ahci
00:1f.3 SMBus: Intel Corporation 7 Series/C210 Series Chipset Family SMBus Controller (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel modules: i2c_i801
01:00.0 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
        Subsystem: Intel Corporation PRO/1000 PT Dual Port Server Adapter
        Kernel driver in use: pci-stub
        Kernel modules: e1000e
01:00.1 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
        Subsystem: Intel Corporation PRO/1000 PT Dual Port Server Adapter
        Kernel driver in use: pci-stub
        Kernel modules: e1000e
02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
        Subsystem: LSI Logic / Symbios Logic Device 3020
        Kernel driver in use: mpt2sas
        Kernel modules: mpt2sas
03:00.0 Multimedia controller: Device 544d:6178
        Subsystem: Device 6205:0001
        Kernel driver in use: TBS PCIE
        Kernel modules: tbs_pcie_dvb
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
        Subsystem: ASRock Incorporation Motherboard (one of many)
        Kernel driver in use: r8169
        Kernel modules: r8169
05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
        Subsystem: XFX Pine Group Inc. Radeon HD 7450
05:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]
        Subsystem: XFX Pine Group Inc. Device aa98
06:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ahci
        Kernel modules: ahci

After VM using passthrough of controller started and stopped

00:00.0 Host bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor DRAM Controller (rev 09)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ivb_uncore
00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor PCI Express Root Port (rev 09)
        Kernel driver in use: pcieport
00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller (rev 09)
        Subsystem: ASRock Incorporation Device 0152
00:14.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB xHCI Host Controller (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: xhci_hcd
00:16.0 Communication controller: Intel Corporation 7 Series/C210 Series Chipset Family MEI Controller #1 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ehci-pci
00:1c.0 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 1 (rev c4)
        Kernel driver in use: pcieport
00:1c.4 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 5 (rev c4)
        Kernel driver in use: pcieport
00:1c.5 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 6 (rev c4)
        Kernel driver in use: pcieport
00:1c.6 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 7 (rev c4)
        Kernel driver in use: pcieport
00:1c.7 PCI bridge: Intel Corporation 7 Series/C210 Series Chipset Family PCI Express Root Port 8 (rev c4)
        Kernel driver in use: pcieport
00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: pci-stub
00:1f.0 ISA bridge: Intel Corporation H77 Express Chipset LPC Controller (rev 04)
        Subsystem: ASRock Incorporation Device 1e4a
00:1f.2 SATA controller: Intel Corporation 7 Series/C210 Series Chipset Family 6-port SATA Controller [AHCI mode] (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ahci
        Kernel modules: ahci
00:1f.3 SMBus: Intel Corporation 7 Series/C210 Series Chipset Family SMBus Controller (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel modules: i2c_i801
01:00.0 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
        Subsystem: Intel Corporation PRO/1000 PT Dual Port Server Adapter
        Kernel driver in use: pci-stub
        Kernel modules: e1000e
01:00.1 Ethernet controller: Intel Corporation 82571EB Gigabit Ethernet Controller (rev 06)
        Subsystem: Intel Corporation PRO/1000 PT Dual Port Server Adapter
        Kernel driver in use: pci-stub
        Kernel modules: e1000e
02:00.0 Serial Attached SCSI controller: LSI Logic / Symbios Logic SAS2008 PCI-Express Fusion-MPT SAS-2 [Falcon] (rev 03)
        Subsystem: LSI Logic / Symbios Logic Device 3020
        Kernel driver in use: mpt2sas
        Kernel modules: mpt2sas
03:00.0 Multimedia controller: Device 544d:6178
        Subsystem: Device 6205:0001
        Kernel driver in use: TBS PCIE
        Kernel modules: tbs_pcie_dvb
04:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
        Subsystem: ASRock Incorporation Motherboard (one of many)
        Kernel driver in use: r8169
        Kernel modules: r8169
05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Caicos [Radeon HD 6450/7450/8450 / R5 230 OEM]
        Subsystem: XFX Pine Group Inc. Radeon HD 7450
05:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Caicos HDMI Audio [Radeon HD 6400 Series]
        Subsystem: XFX Pine Group Inc. Device aa98
06:00.0 SATA controller: ASMedia Technology Inc. ASM1062 Serial ATA Controller (rev 01)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ahci
        Kernel modules: ahci

Link to comment

@CHBMB can you check to passtrough the controller in your OSX ? just to verify if mouse and keyboard as lagging?

 

//Peter

 

I'm actually the other way around from you.  My controller is passed through in OSX, it's a logitech unifying receiver for the mouse and keyboard and it works fine.  I'll start the VM and shutdown and start again to check.  But I'm not anticipating any problems.

Link to comment

maybe this is the issue ?

00:1d.0 have kernel driver vfio-pci

 

Now my controller looks like this

 

00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: vfio-pci

 

My other USB controller that I'm NOT using in any VM looks like this

 

00:1a.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #2 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ehci-pci

 

I'm googling to see how to change back to ehci-pci from vfio-pci

 

I can bet that  00:1d.0 controller have ehci-pci afer boot :-)

Link to comment

@CHBMB can you check to passtrough the controller in your OSX ? just to verify if mouse and keyboard as lagging?

 

//Peter

 

I'm actually the other way around from you.  My controller is passed through in OSX, it's a logitech unifying receiver for the mouse and keyboard and it works fine.  I'll start the VM and shutdown and start again to check.  But I'm not anticipating any problems.

 

So you are passing trough the controller not only the receiver ? OK... anything else connected to the controller ?

Link to comment

Peter, sorry I think I've confused you a little.

 

The controller I've been experimenting with for you is 00:1a.0

 

00:1d.0 is being used for my Unraid VM and I have append pci-stub.ids=8086:105e,8086:1e26 in my syslinux to passthrough a dual NIC and a USB controller that is unrelated to the VMs I have been using to look at your issue..

Link to comment

I'n not using pci-stub.ids for my controller

 

00:1d.0 USB controller: Intel Corporation 7 Series/C210 Series Chipset Family USB Enhanced Host Controller #1 (rev 04)
        Subsystem: ASRock Incorporation Motherboard
        Kernel driver in use: ehci-pci

 

On this controller I have 1 logitech receiver, 2 mouse, 1 keyboard and 1 USB stick -> passing trough controller to my Windows VM

For my OSX I only trying to passing trough 1 mouse and the keyboard from this controller, but as you know, after shutting down my windows VM , my USB bus is gone :-(

 

Maybe I shall add this controller to pci.stub?? hmmmm , but it would probably not have any effect

 

//Peter 

Link to comment

After I have started and shut down my Windows VM (Using my USB controller)

 

I need to unbind vfio-pci driver !

 

echo 0000:00:1d.0 > /sys/bus/pci/drivers/vfio-pci/unbind

 

After that I bind same controller to it was before I stared the Windows VM -> to ehci-pci

 

echo 0000:00:1d.0 > /sys/bus/pci/drivers/ehci-pci/bind

 

Easy ? yes! , but how to automate this  :o

 

//Peter

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...