ghost82 Posted June 20, 2021 Share Posted June 20, 2021 I'm reading several posts of users asking for help about gpu passthrough not working in different operating systems in their virtual machines. If one uses the unraid gui in the setup of a virtual machine to passthrough the gpu and its audio part, unraid saves into the libvirt xml the video part into a target address, as far as I tested, domain = 0000, bus = xx, slot = 0, function = 0, and the audio part into another target address, domain = 0000, bus = yy, slot = 0, function = 0. This will results in different behaviors, the worst one is that the gpu isn't detected at all by the guest. The correct topology is same domain (obviously), same bus, same slot, different function, in a multifunction device. Example of a broken topology created by unraid: <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> </source> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/> </hostdev> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x04' slot='0x00' function='0x1'/> </source> <address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> </hostdev> Correct topology: <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x04' slot='0x00' function='0x0'/> </source> <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='0x04' slot='0x00' function='0x1'/> </source> <address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x1'/> </hostdev> Usually, the user is not expert enough to manually change things inside the xml, making unraid to overcome this issue would be great. Quote Link to comment
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.