grizzle Posted June 2, 2020 Posted June 2, 2020 Sorry to start. I am new around here. I need some advice, at the moment i keep getting the following error when starting win10 vm with 2070 super pass through Execution error internal error: qemu unexpectedly closed the monitor: 2020-06-02T18:25:08.774188Z qemu-system-x86_64: -device vfio-pci,host=0000:08:00.0,id=hostdev0,bus=pci.0,multifunction=on,addr=0x5: vfio 0000:08:00.0: group 2 is not viable Please ensure all devices within the iommu_group are bound to their vfio bus driver. i have edited the XML file as below <driver name='vfio'/> <source> <address domain='0x0000' bus='0x08' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' multifunction='on'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x08' slot='0x00' function='0x1'/> </source> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x1'/> </hostdev> and the IOMMU Group 2 IOMMU group 2:[1022:1452] 00:03.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge [1022:1453] 00:03.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 00h-0fh) PCIe GPP Bridge [10de:1e84] 08:00.0 VGA compatible controller: NVIDIA Corporation TU104 [GeForce RTX 2070 SUPER] (rev a1) [10de:10f8] 08:00.1 Audio device: NVIDIA Corporation TU104 HD Audio Controller (rev a1) [10de:1ad8] 08:00.2 USB controller: NVIDIA Corporation TU104 USB 3.1 Host Controller (rev a1) [10de:1ad9] 08:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU104 USB Type-C UCSI Controller (rev a1) I figure it is something to do with the USB controller and Serial Bus but have no idea how to rectify the problem Any help would me much appericated Quote
StuDaBaiker Posted June 3, 2020 Posted June 3, 2020 You need to passthrough the entire IOMMU group. There is no way around that. If everything in that group is for the video card then you need to add the rest of the items to your passthrough. Make sure you are passing your gpu audio in as well as your sound card. If it automatically passes the rest of the group for you thats all you need to change. If not, first ensure IOMMU is enabled in bios. That might potentially fix your groups. I don't have experience with your gpu but mine has the GPU and GPU sound in their own groups by default. If this is not the case you will need to enable acs override. Watch some spaceinvaderone videos on youtube, he covers all of this in his gpu passthrough to vm videos Quote
grizzle Posted June 6, 2020 Author Posted June 6, 2020 Thank you Stu , I managed to break up the IOMMU with the ARCS override on the motherboard and spend hours watching Space Invader . Cheers for the reply Quote
bmartino1 Posted September 16 Posted September 16 (edited) having to redo a VM with a 2070 i'm here to clarify the things needed: Lattest Unraid verion 6.12 Step 1 PCI Bind: I'm using VM overids your IOMMU groups may vary. You must pcie bind and pass the VGA, Audio, USB and Serial Devices of the 2070... Step 2 xml edits for multifunction: <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x10' slot='0x00' function='0x0' multifunction='on'/> </source> <alias name='hostdev0'/> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0' multifunction='on'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x10' slot='0x00' function='0x1'/> </source> <alias name='hostdev1'/> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x1'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x10' slot='0x00' function='0x2'/> </source> <alias name='hostdev2'/> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x2'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x10' slot='0x00' function='0x3'/> </source> <alias name='hostdev3'/> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x3'/> </hostdev> Note that by G-card is in pcie slot 10 Note the multifunction option is on, that all devices on in virtual pcie slot 3 with their function matching the virtual function. This is required to pass a 2070/2080 nvdia gcard i'm also using machine type q7.2 with uefi(OVM) Please review: other edits see Edited September 16 by bmartino1 fix xml mistake Quote
Recommended Posts
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.