GTA V on Linux (Skylake Build + Hardware VM Passthrough)

Yes I actually added that to the grub.cfg file under boot so it does that automatically and I entered the,command to,check that it was working and all looks good

And you do have IOMMU turned on in your BIOS?

The syntax of the command might be different depending on which distro you are using....I think I might remove the "-type 1" from the line and see what happens.

You can also try this command to see if grub is loading the IOMMU.

cat /proc/cmdline

Yeah I mean everything is enabled and I'm runni bf manjaro which is arch with a fancy ribbon and a gui software center

Unfortunately I'm out of ideas.....maybe someone else will see your post and have the answer.

Well I think I've figured it out i don't have or at least cannot find a vfio-pci.conf file anywhere or at least where @wendell nd the arch wiki says to find it im definitely using the propper kernel and all and my output of

is
BOOT_IMAGE=/boot/vmlinuz-4.1-x86_64 root=UUID=f760cf18-3b2c-452e-97a5-84f1de9fe03f rw quiet splash resume=UUID=9b8f5a69-2b87-447a-904a-7a6256115418 intel_iommu=on

so idk maybe im just doing everything wrong

Looks right, mine is...but I use pci-stub instead of the vfio-pci

BOOT_IMAGE=/vmlinuz-4.0.6-300.fc22.x86_64+debug root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/swap rd.lvm.lv=fedora/root rhgb quiet amd_iommu=on pci-stub.ids=1002:6810,1002:aab0,8086:10d3 LANG=en_US.UTF-8

does that work better?
ill try it cause i think its just an issue im having with vfio-pci

As to working better I have no idea since I never tried the vfio-pci setup, I tried the pci-stub first and it worked very well with my hardware I just never tried anything else, once I got one of the gpu's passed through and Win 7 saw it and wanted to load drivers for it I figured it was good enough,weeks later I added a dedicated NIC to the KVM and added it to the pci-stub and it worked flawlessly.

My biggest concern was that it was a stable KVM using the pci-stub and it is, I kinda think I'll try to go to the vfio setup maybe this winter after Fedora 23 is out, but then again my setup is so stable that I might not change until I have some kind of compelling reason to do so.

I've played a lot of games with my setup and other than sound latency they work great, I just finished playing through Half-Life 2 and have played Fallout NV and Fallout 3 along with others....it just works.

wait i tried the pcie stub way and i got the output

dmesg | grep pci-stub
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.1-x86_64 root=UUID=f760cf18-3b2c-452e-97a5-84f1de9fe03f rw quiet splash resume=UUID=9b8f5a69-2b87-447a-904a-7a6256115418 intel_iommu=on pci-stub.ids=10de:13c0,10de:0fbb
[ 0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.1-x86_64 root=UUID=f760cf18-3b2c-452e-97a5-84f1de9fe03f rw quiet splash resume=UUID=9b8f5a69-2b87-447a-904a-7a6256115418 intel_iommu=on pci-stub.ids=10de:13c0,10de:0fbb
[ 4.603794] pci-stub: add 10DE:13C0 sub=FFFFFFFF:FFFFFFFF cls=00000000/00000000
[ 4.603818] pci-stub 0000:02:00.0: claimed by stub
[ 4.603829] pci-stub: add 10DE:0FBB sub=FFFFFFFF:FFFFFFFF cls=00000000/00000000
[ 4.603850] pci-stub 0000:02:00.1: claimed by stub

LOL...well lookie' there....you can work with that... ;)

well not im even worse off cause i dont know how to bind my gpu to vfio

im so confused by the documentation

also my iommu_groups folder is empty so idk what that means

Thank you so much for the help! I appreciate it :)

1 Like

See the posts (185 & 186) above that I made to @MushyIV and follow what I told him, if you run the command..

find /sys/kernel/iommu_groups/ -type l

and you get a return that shows the groups your good to go.....

You do not need to do any of the vfio stuff at this point because you are using pci-stub to isolate/black list the device which it looks like you were successful in doing, you can double check your work by following this guide but stopping at the point he starts talking about vfio you should not need to do anything further to get it to work except build your KVM and pass the device to the KVM.

Then all you need to do is setup your KVM and use virt-manager to pass the device through, you can use this guide to setup the KVM if you've never done it before.

Sorry for the very late response, haven't been at my computer much as I have just started university. I was not using a script to start the VM I was using virt-manager after many hours of changing settings i did get the pass through to work with uefi.

Unfortunately entering
find /sys/kernel/iommu_groups/ -type l
Comes up with no output at all meaning I either did something wrong or am not enabling something I should I'm not to sure how to trouble shoot that since everybody's setup is different
As a side note how do you make the console commands come up in that grey box I would like to start doing that but idk how

Best advice I can give you is to start fresh with your setup using pci-stub and disregarding all the vfio-pci by following the guide I linked to in the above post (part 3) and see what happens, with the output you got last night you did successfully unbind the card and pci-stub grabbed it, you were very close to having it work, but I do agree you have something either using the wrong syntax or something omitted....so what I'm saying is to disregard what Wendell did all together including the UEFI stuff.

You could also if you haven't changed things from last night go ahead and build your KVM and use virt-manager to see if the device pci-stub grabbed is listed and try the pass through, your not going to break anything by doing that and if you do just retrace your steps changing the stuff back or commenting it out.

The only other thing I can think of is that the distro you are using is somehow different in the syntax for the IOMMU command line, not really sure about that since I only have experience with Ubuntu and Fedora distros, I am thinking that on one of the distros I tested I had to remove the -type 1 from the command to get a response but it's a little fuzzy as to which it was and under what circumstances I came across it.

For your other question when creating a reply look in the upper left hand corner of the box, you will see a row of icons, the 6th icon will do what you ask by typing the text (or paste), highlighting the text, then clicking on that icon, you can then see in the preview window that it has done it's thing.

wow i feel like a complete dumbass lol i had enabled intel virtualization in my bios but not the intel VT-d that was another setting hidden somewhere else now i enter

find /sys/kernel/iommu_groups/ -type l

and i get an output of

/sys/kernel/iommu_groups/0/devices/0000:ff:0b.0
/sys/kernel/iommu_groups/0/devices/0000:ff:0b.1
/sys/kernel/iommu_groups/0/devices/0000:ff:0b.2
/sys/kernel/iommu_groups/1/devices/0000:ff:0c.0
/sys/kernel/iommu_groups/1/devices/0000:ff:0c.1
/sys/kernel/iommu_groups/1/devices/0000:ff:0c.2
/sys/kernel/iommu_groups/1/devices/0000:ff:0c.3
/sys/kernel/iommu_groups/1/devices/0000:ff:0c.4
/sys/kernel/iommu_groups/1/devices/0000:ff:0c.5
/sys/kernel/iommu_groups/2/devices/0000:ff:0f.0
/sys/kernel/iommu_groups/2/devices/0000:ff:0f.1
/sys/kernel/iommu_groups/2/devices/0000:ff:0f.4
/sys/kernel/iommu_groups/2/devices/0000:ff:0f.5
/sys/kernel/iommu_groups/2/devices/0000:ff:0f.6
/sys/kernel/iommu_groups/3/devices/0000:ff:10.0
/sys/kernel/iommu_groups/3/devices/0000:ff:10.1
/sys/kernel/iommu_groups/3/devices/0000:ff:10.5
/sys/kernel/iommu_groups/3/devices/0000:ff:10.6
/sys/kernel/iommu_groups/3/devices/0000:ff:10.7
/sys/kernel/iommu_groups/4/devices/0000:ff:12.0
/sys/kernel/iommu_groups/4/devices/0000:ff:12.1
/sys/kernel/iommu_groups/5/devices/0000:ff:13.0
/sys/kernel/iommu_groups/5/devices/0000:ff:13.1
/sys/kernel/iommu_groups/5/devices/0000:ff:13.2
/sys/kernel/iommu_groups/5/devices/0000:ff:13.3
/sys/kernel/iommu_groups/5/devices/0000:ff:13.4
/sys/kernel/iommu_groups/5/devices/0000:ff:13.5
/sys/kernel/iommu_groups/5/devices/0000:ff:13.6

/sys/kernel/iommu_groups/5/devices/0000:ff:13.7
/sys/kernel/iommu_groups/6/devices/0000:ff:14.0
/sys/kernel/iommu_groups/6/devices/0000:ff:14.1
/sys/kernel/iommu_groups/6/devices/0000:ff:14.2
/sys/kernel/iommu_groups/6/devices/0000:ff:14.3
/sys/kernel/iommu_groups/6/devices/0000:ff:14.6
/sys/kernel/iommu_groups/6/devices/0000:ff:14.7
/sys/kernel/iommu_groups/7/devices/0000:ff:15.0
/sys/kernel/iommu_groups/7/devices/0000:ff:15.1
/sys/kernel/iommu_groups/7/devices/0000:ff:15.2
/sys/kernel/iommu_groups/7/devices/0000:ff:15.3
/sys/kernel/iommu_groups/8/devices/0000:ff:16.0
/sys/kernel/iommu_groups/8/devices/0000:ff:16.6
/sys/kernel/iommu_groups/8/devices/0000:ff:16.7
/sys/kernel/iommu_groups/9/devices/0000:ff:17.0
/sys/kernel/iommu_groups/9/devices/0000:ff:17.4
/sys/kernel/iommu_groups/9/devices/0000:ff:17.5
/sys/kernel/iommu_groups/9/devices/0000:ff:17.6
/sys/kernel/iommu_groups/9/devices/0000:ff:17.7
/sys/kernel/iommu_groups/10/devices/0000:ff:1e.0
/sys/kernel/iommu_groups/10/devices/0000:ff:1e.1
/sys/kernel/iommu_groups/10/devices/0000:ff:1e.2
/sys/kernel/iommu_groups/10/devices/0000:ff:1e.3
/sys/kernel/iommu_groups/10/devices/0000:ff:1e.4
/sys/kernel/iommu_groups/11/devices/0000:ff:1f.0
/sys/kernel/iommu_groups/11/devices/0000:ff:1f.2
/sys/kernel/iommu_groups/12/devices/0000:00:00.0
/sys/kernel/iommu_groups/13/devices/0000:00:01.0
/sys/kernel/iommu_groups/14/devices/0000:00:01.1
/sys/kernel/iommu_groups/15/devices/0000:00:02.0
/sys/kernel/iommu_groups/16/devices/0000:00:03.0
/sys/kernel/iommu_groups/17/devices/0000:00:03.2
/sys/kernel/iommu_groups/18/devices/0000:00:05.0
/sys/kernel/iommu_groups/18/devices/0000:00:05.1
/sys/kernel/iommu_groups/18/devices/0000:00:05.2
/sys/kernel/iommu_groups/18/devices/0000:00:05.4
/sys/kernel/iommu_groups/19/devices/0000:00:11.0
/sys/kernel/iommu_groups/20/devices/0000:00:14.0
/sys/kernel/iommu_groups/21/devices/0000:00:16.0
/sys/kernel/iommu_groups/22/devices/0000:00:19.0
/sys/kernel/iommu_groups/23/devices/0000:00:1a.0
/sys/kernel/iommu_groups/24/devices/0000:00:1b.0
/sys/kernel/iommu_groups/25/devices/0000:00:1c.0
/sys/kernel/iommu_groups/26/devices/0000:00:1c.3
/sys/kernel/iommu_groups/27/devices/0000:00:1c.4
/sys/kernel/iommu_groups/28/devices/0000:00:1c.6
/sys/kernel/iommu_groups/29/devices/0000:00:1d.0
/sys/kernel/iommu_groups/30/devices/0000:00:1f.0
/sys/kernel/iommu_groups/30/devices/0000:00:1f.2
/sys/kernel/iommu_groups/30/devices/0000:00:1f.3
/sys/kernel/iommu_groups/31/devices/0000:02:00.0
/sys/kernel/iommu_groups/31/devices/0000:02:00.1
/sys/kernel/iommu_groups/32/devices/0000:01:00.0
/sys/kernel/iommu_groups/32/devices/0000:01:00.1
/sys/kernel/iommu_groups/33/devices/0000:07:00.0
/sys/kernel/iommu_groups/34/devices/0000:08:01.0
/sys/kernel/iommu_groups/34/devices/0000:09:00.0
/sys/kernel/iommu_groups/35/devices/0000:08:02.0
/sys/kernel/iommu_groups/35/devices/0000:0a:00.0
/sys/kernel/iommu_groups/36/devices/0000:08:03.0
/sys/kernel/iommu_groups/37/devices/0000:08:04.0
/sys/kernel/iommu_groups/38/devices/0000:0d:00.0
/sys/kernel/iommu_groups/39/devices/0000:0e:00.0

by the way how do you make it so you don't have to hit spacebar for each line 4 times to get it to include with the rest of the grey box?

1 Like

LOL....I have no idea how you would do that, if my text is that long I just edit it down to a manageable size unless there is something in it that I'm trying to show then I just cut that part and paste it to the post, highlight, then hit the icon.


But, you are golden......now go build your KVM and get that GPU passed through! congratulations!