You are not logged in.
Hi,
I had a working VFIO setup for qemu on kernel 6.11.8 which broke earlier today when installing the 6.12 kernel. I'm using modprobe.d to isolate my USB BT device, a GPU (and associated audio device), and a USB controller like so:
/etc/modprobe.d/vfio.conf:
blacklist btusb
softdep nouveau pre: vfio-pci
softdep snd_hda_intel pre: vfio-pci
softdep xhci_pci pre: vfio-pci
options vfio-pci ids=10de:2684,10de:22ba,1022:15b6
This no longer works as it seems xhci_pci is no longer being built as a module. Looking at the latest gitlab commit for 6.12.arch1-1 you can see the change to the kernel config. Why was this change made? I'm no longer able to use my USB controller inside my virtual machine. Should I open a bug? Is there a workaround so that I can use this kernel or am I stuck on 6.11 for a while?
Thanks!
Offline
Is there a workaround so that I can use this kernel or am I stuck on 6.11 for a while?
You could try preventing the built-in xhci-pci from being initialized by adding to the Kernel parameters
initcall_blacklist=xhci_pci_init
Offline
1022:15b6 is probably not the only usb hub and xhci_pci supposed to drive some others?
Why was this change made? … Should I open a bug?
shrug and probably - otherwise you'll probably have to unbind the controller at runtime, https://wiki.archlinux.org/title/PCI_pa … _device_ID but you'll at leat get an explanation of the status quo.
Offline
menders wrote:Is there a workaround so that I can use this kernel or am I stuck on 6.11 for a while?
You could try preventing the built-in xhci-pci from being initialized by adding to the Kernel parameters
initcall_blacklist=xhci_pci_init
That might be a problem as I have multiple USB controllers in the system and I need the others.
Offline
1022:15b6 is probably not the only usb hub and xhci_pci supposed to drive some others?
Why was this change made? … Should I open a bug?
shrug and probably - otherwise you'll probably have to unbind the controller at runtime, https://wiki.archlinux.org/title/PCI_pa … _device_ID but you'll at leat get an explanation of the status quo.
I did try unbinding after the system had booted but the system locks up when I do so. This is why I've been handling it using modprobe.d.
Offline
What does "locks up" mean?
You'll lose whatever pci device you unbind, for a usb controller, the usb devices attached to it. You might have to unbind/remove those first, https://unix.stackexchange.com/question … ice-dongle
Offline
What does "locks up" mean?
You'll lose whatever pci device you unbind, for a usb controller, the usb devices attached to it. You might have to unbind/remove those first, https://unix.stackexchange.com/question … ice-dongle
The system is frozen -- completely unresponsive to input.
Connected to this controller is a USB hub with many devices. Is there an easy, programmatic way to unbind all USB devices connected to this hub before I unbind the controller from the PCI bus?
Offline
It might be quicker to build a 6.12 kernel locally with xhci-pci changed back to a module.
Edit:
https://gitlab.archlinux.org/archlinux/ … /issues/91
Last edited by loqs (2024-11-20 19:34:01)
Offline