Got my gaming VM working off a passed through M.2. Only issue I have is i can’t pass through my on board audio. I am using Unraid. I have tried PCIe ACS override but still getting the below error. Any tips or tricks?
My sever build log can be found here:
https://forum.level1techs.com/t/wittel-server-project/161490/6
Error:
internal error: process exited while connecting to monitor: 2021-01-18T01:44:36.328189Z qemu-system-x86_64: -device vfio-pci,host=0000:00:1f.3,id=hostdev2,bus=pci.0,addr=0x8: vfio 0000:00:1f.3: group 11 is not viable Please ensure all devices within the iommu_group are bound to their vfio bus driver.
IOMMU group 11:
- |[8086:a2c9] 00:1f.0 ISA bridge: Intel Corporation Z370 Chipset LPC/eSPI Controller|
- ||[8086:a2a1] 00:1f.2 Memory controller: Intel Corporation 200 Series/Z370 Chipset Family Power Management Controller|
- ||[8086:a2f0] 00:1f.3 Audio device: Intel Corporation 200 Series PCH HD Audio|
- ||[8086:a2a3] 00:1f.4 SMBus: Intel Corporation 200 Series/Z370 Chipset Family SMBus Controller|
Possible Fix Here:
https://forums.unraid.net/topic/60010-guide-how-to-passthrough-intel-chipset-audio/page/2/
https://www.youtube.com/watch?v=qQiMMeVNw-o&feature=emb_logo
So it looks like the groups aren’t being completely separated, if at all.
From the possible fix you linked:
default /syslinux/menu.c32
menu title Lime Technology, Inc.
prompt 0
timeout 50
label unRAID OS
menu default
kernel /bzimage
append pcie_acs_override=downstream vfio-pci.ids=8086:a170 modprobe.blacklist=i2c_i801,i2c_smbus initrd=/bzroot
label unRAID OS GUI Mode
kernel /bzimage
append pcie_acs_override=downstream initrd=/bzroot,/bzroot-gui
label unRAID OS Safe Mode (no plugins, no GUI)
kernel /bzimage
append pcie_acs_override=downstream initrd=/bzroot unraidsafemode
etc etc etc
You could try changing the values of
pcie_acs_override=downstream
to
pcie_acs_override=downstream, multifunction
Which if I recall correctly should separate the groups even more than they are.
I would also check in the info settings:

The iommu group needs to show enabled, and Not disabled. If it shows disabled, make sure you enable intel vt-d or amd-vi etc inside your motherboard bios.
Some devices simply will refuse to separate and a usb dac, hdmi/dp audio, or scream would be required.
I was able to get is working with
kernel /bzimage
append pcie_acs_override=multifunction initrd=/bzroot,/bzroot-gui vfio_iommu_type1.allow_unsafe_interrupts=1 vfio-pci.ids=8086:a2c9,8086:a2a1,8086:a2f0,8086:a2a3
So basically both ACS_Overide and unsafe_interrupts have to be enabled.
1 Like
do the append commands need to be applied in any particular order?
Also, did you experiment with acs_override=multifunction,downstream I.E. “both”?