Passthrough device id's

I got to the point in the walkthrough where you add device id’s to vfio.conf and say my two gpus had the same id. the problem is one is a msi 480 and the other is a sapphire 580. They are in diffrent iommu groups. what do i do from here?

IOMMU Group 17 0a:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X] [1002:67df] (rev e7)
IOMMU Group 17 0a:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 580] [1002:aaf0]
IOMMU Group 18 0b:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X] [1002:67df] (rev c7)
IOMMU Group 18 0b:00.1 Audio device [0403]: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 580] [1002:aaf0]

You will need to manually bind it rather then using the module arguments, for example:

modprobe vfio-pci
echo "0000:0a:00.0" > /sys/bus/pci/drivers/vfio-pci/bind
echo "0000:0a:00.1" > /sys/bus/pci/drivers/vfio-pci/bind

I was under the impression that AMDGPU can’t be rebound. Did they change that recently?

No, you still need to prevent it from being bound to any other module as per normal, this will only work properly on the initial bind.

1 Like

Ah, okay.

So would i basically just copy and paste those lines into a terminal?

No, nor should you EVER do that. Please learn what the commands are doing so you understand what you’re doing or one day someone will tell you to paste something in that will compromise your system.

2 Likes

That reply is not actually helpful and comes off as really rude. I still am not understanding what exactly you meant in your original post. And when I said BASICALLY do that, I did not mean that’s EXACTLY what I was going to do. please have patience with people as they may not have as much Linux file or programming knowledge as you do. Now with that being said can please you explain it in a way that someone with limited knowledge would understand.

It was not intended to be rude, but rather informative. The linux console is extremely powerful and as such one wrong command can break your entire system. You should always understand what you’re attempting to run before running it so that you do not break things.

Perhaps so, but it indicates that you are not going to research what the “bind” and “unbind” virtual files are before messing with them, for all you know I could be telling you to do something that will have horrible consequences.

Hacking on things in /sys without understanding them can cause physical hardware damage, such as putting a hardware device into a unsupported/bad mode burning it out, or overvolting something, or even messing with your HDD controller corrupting your HDD.

Your initial post doesn’t indicate a limited level of experience with linux, on the contrary, it shows more experience them most and as such I assumed you would be able to discover what those commands are and how to use them.

I have tons of patience, the information I gave you should be enough for you to google and attempt to teach yourself what it is doing. 1% of learning Linux is from people that teach, the other 99% is through your own research, which you are expected to do if you are going to use an unsupported free operating system.

All that said, a quick search for “sysfs bind” turns up this article:

In the end if you have tried to research and understand the commands and you have failed to do so by all means ask, but you must put some effort in first instead of just asking to be handed the answer. Time is precious to all of us.

1 Like

Thank you. As there was no mention of “sysfs bind” anywhere in the previous post i didn’t even know where to start looking. I have been able to set up pci passthrough on a previous build with some minor hiccups that i was able to get through with some research on my own. but in this case i needed some slightly less confined information to begin looking into what exactly i needed to look into to figure out what i had to do to proceed. Once again id like to thank you for your help in getting me pointed in the right direction.