Linux-VFIO - Choosing The Correct Version (Manjaro)

Hey everyone! I’m trying to pass through a USB PCIE card to a VM and unfortunately it is in a group with other devices that the host relies on.

I did some digging and apparently the linux-vfio package from the AUR includes the ACS patch and therefore should help. The version listed in pamac is linux-vfio 5.11.6.arch1-1 but I’m currently on kernel 5.9.16-1. Is it safe to install the latest version or should I try and find one closest to my current kernel? If so, how would I download the one for my kernel?

I’m new to Manjaro and VFIO so sorry if this is a dumb question.

Specs:
Manjaro 20.2.1 - Kernel 5.9.16-1
Ryzen 5 3600
MSI X370 Gaming Pro Carbon
NVIDIA GTX 970 (host)
NVIDIA GT 710 (passed to VM)

Here is the IOMMU Group in question:

IOMMU Group 16:
    03:00.0 USB controller [0c03]: Advanced Micro Devices, Inc. [AMD] X370 Series Chipset USB 3.1 xHCI Controller [1022:43b9] (rev 02)
    03:00.1 SATA controller [0106]: Advanced Micro Devices, Inc. [AMD] X370 Series Chipset SATA Controller [1022:43b5] (rev 02)
    03:00.2 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] X370 Series Chipset PCIe Upstream Port [1022:43b0] (rev 02)
    20:00.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
    20:01.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
    20:02.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
    20:03.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
    20:04.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
    20:08.0 PCI bridge [0604]: Advanced Micro Devices, Inc. [AMD] 300 Series Chipset PCIe Port [1022:43b4] (rev 02)
    21:00.0 Ethernet controller [0200]: Intel Corporation I211 Gigabit Network Connection [8086:1539] (rev 03)
    22:00.0 USB controller [0c03]: Renesas Technology Corp. uPD720201 USB 3.0 Host Controller [1912:0014] (rev 03)
    26:00.0 USB controller [0c03]: ASMedia Technology Inc. ASM2142 USB 3.1 Host Controller [1b21:2142]

The device I’m trying to pass is 22:00.0 USB controller [0c03]: Renesas Technology Corp. uPD720201 USB 3.0 Host Controller [1912:0014] (rev 03).

It’s never %100 safe, since you are changing to a different kernel, one that is (presumably) tested on arch instead of Manjaro.

In your case, the main thing I would be concerned about is if the nvidia driver on the host will work with the newer kernel. Otherwise, it should be pretty much fine.

You could also look into installing the linux-vfio-lts from the AUR, as that would move a bit slower.

The linux-vfio package is actually an entire kernel, and it installs alongside your current kernel (you should be able to select which one you want at your bootloader). It includes the ACS patch, but that is compiled into the kernel, it’s not something added after compilation.

1 Like