Alright, this one I'm struggling to come up with an answer for. Last night, I added a USB 3 PCI-E expansion card to my PC. Luckily, it ended up in its own IOMMU group, so I passed it through to my VM with no problems at all. For reference, I've got a USB device switch connected to both the new card, and my onboard USB so I can easily swap directly between the host and guest with the same inputs. Connected to the switch is a USB 3 hub, which currently has my keyboard, mouse, and a bluetooth adapter. Plugged directly into the new USB 3 card is a USB audio adapter. This is where my problem gets weird.
Any time there's audio OUTPUT (specifically not input, because this device does both) through the USB audio device, all other USB devices on the card hang and refuse to respond until playback stops. So, for example, if I click on the volume slider in Windows to do a level check, my mouse and keyboard will just stop entirely until the ding finishes. This manifests in a really horrible way if I open a game, because inputs stop responding completely. I've found that by swapping back and forth between the host and guest modes on my USB switch, I can get input back briefly, usually about 2 seconds. In many cases that can be enough to exit the game and get control of the guest back. My initial thought was that this was an issue with the audio adapter itself. I've since connected a separate USB headset and confirmed that it causes the same behavior. I also tested whether audio input causes it, and confirmed that it specifically does not. Further, audio output via HDMI works perfectly. This is mostly an annoyance and a curiosity at this point, because I've got a somewhat functional workaround, but I'd really like to fix it if at all possible. I've checked my dmesg and not found anything in there that corresponds with the timeframes that the problem occurred. Attached is the shell script that I use to start the VM, and the output of lspci -nnk. If there are any other useful pieces of data I could provide, I'd be glad to do so. Thanks!
00:00.0 Host bridge [0600]: Intel Corporation 4th Gen Core Processor DRAM
Controller [8086:0c00] (rev 06)
Subsystem: Micro-Star International Co., Ltd. [MSI] 4th Gen Core
Processor DRAM Controller [1462:7922]
Kernel driver in use: hsw_uncore
00:01.0 PCI bridge [0604]: Intel Corporation Xeon E3-1200 v3/4th Gen Core
Processor PCI Express x16 Controller [8086:0c01] (rev 06)
Kernel driver in use: pcieport
Kernel modules: shpchp
00:02.0 VGA compatible controller [0300]: Intel Corporation Xeon E3-1200 v3/4th
Gen Core Processor Integrated Graphics Controller [8086:0412] (rev 06)
DeviceName: Onboard IGD
Subsystem: Micro-Star International Co., Ltd. [MSI] Xeon E3-1200 v3/4th
Gen Core Processor Integrated Graphics Controller [1462:7922]
Kernel driver in use: i915
Kernel modules: i915
00:03.0 Audio device [0403]: Intel Corporation Xeon E3-1200 v3/4th Gen Core
Processor HD Audio Controller [8086:0c0c] (rev 06)
Subsystem: Micro-Star International Co., Ltd. [MSI] Xeon E3-1200 v3/4th
Gen Core Processor HD Audio Controller [1462:7922]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:14.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB
xHCI Controller [8086:8cb1]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family USB xHCI Controller [1462:7922]
Kernel driver in use: xhci_hcd
00:16.0 Communication controller [0780]: Intel Corporation 9 Series Chipset
Family ME Interface #1 [8086:8cba]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family ME Interface [1462:7922]
Kernel driver in use: mei_me
Kernel modules: mei_me
00:1a.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB
EHCI Controller #2 [8086:8cad]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family USB EHCI Controller [1462:7922]
Kernel driver in use: ehci-pci
00:1b.0 Audio device [0403]: Intel Corporation 9 Series Chipset Family HD Audio
Controller [8086:8ca0]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family HD Audio Controller [1462:d922]
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel
00:1c.0 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI
Express Root Port 1 [8086:8c90] (rev d0)
Kernel driver in use: pcieport
Kernel modules: shpchp
00:1c.2 PCI bridge [0604]: Intel Corporation 82801 PCI Bridge [8086:244e] (rev
d0)
00:1c.3 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI
Express Root Port 4 [8086:8c96] (rev d0)
Kernel driver in use: pcieport
Kernel modules: shpchp
00:1c.6 PCI bridge [0604]: Intel Corporation 9 Series Chipset Family PCI
Express Root Port 7 [8086:8c9c] (rev d0)
Kernel driver in use: pcieport
Kernel modules: shpchp
00:1d.0 USB controller [0c03]: Intel Corporation 9 Series Chipset Family USB
EHCI Controller #1 [8086:8ca6]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family USB EHCI Controller [1462:7922]
Kernel driver in use: ehci-pci
00:1f.0 ISA bridge [0601]: Intel Corporation 9 Series Chipset Family Z97 LPC
Controller [8086:8cc4]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family Z97 LPC Controller [1462:7922]
Kernel driver in use: lpc_ich
Kernel modules: lpc_ich
00:1f.2 SATA controller [0106]: Intel Corporation 9 Series Chipset Family SATA
Controller [AHCI Mode] [8086:8c82]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family SATA Controller [AHCI Mode] [1462:7922]
Kernel driver in use: ahci
Kernel modules: ahci
00:1f.3 SMBus [0c05]: Intel Corporation 9 Series Chipset Family SMBus
Controller [8086:8ca2]
Subsystem: Micro-Star International Co., Ltd. [MSI] 9 Series Chipset
Family SMBus Controller [1462:7922]
Kernel modules: i2c_i801
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM204 [GeForce GTX
970] [10de:13c2] (rev a1)
Subsystem: Micro-Star International Co., Ltd. [MSI] GM204 [GeForce GTX
970] [1462:3160]
Kernel driver in use: vfio-pci
Kernel modules: nvidiafb, nouveau
01:00.1 Audio device [0403]: NVIDIA Corporation GM204 High Definition Audio
Controller [10de:0fbb] (rev a1)
Subsystem: Micro-Star International Co., Ltd. [MSI] GM204 High
Definition Audio Controller [1462:3160]
Kernel driver in use: vfio-pci
Kernel modules: snd_hda_intel
03:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI
Bridge [1b21:1080] (rev 03)
Kernel modules: shpchp
05:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd.
RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller [10ec:8168] (rev 0c)
Subsystem: Micro-Star International Co., Ltd. [MSI] RTL8111/8168/8411
PCI Express Gigabit Ethernet Controller [1462:7922]
Kernel driver in use: r8169
Kernel modules: r8169
06:00.0 USB controller [0c03]: VIA Technologies, Inc. VL805 USB 3.0 Host
Controller [1106:3483] (rev 01)
Subsystem: VIA Technologies, Inc. VL805 USB 3.0 Host Controller
[1106:3483]
Kernel driver in use: vfio-pci
start.scrubbed.sh
Description: Bourne shell script
_______________________________________________ vfio-users mailing list [email protected] https://www.redhat.com/mailman/listinfo/vfio-users
