[SOLVED] One GPU Passtrough on Ryzen after upgrade


Recommended Posts

Hello all,

 

For more than one year, i manage to passthrough a GeForce GTX 1650 Super to a Windows VM using a cheap Xeon from 2011 with no iGPU*.

Two days ago, my motherboard died and i needed to change the motherboard, but also the CPU and the RAM (because 2011 hardware).

 

So i bought :

- Motherboard : ASRock B450 Steel Legend (i activated IOMMU support)

- RAM : Corsair Vengeance LPX 16Go (2x8Go) DDR4 3200MHz

- CPU : AMD Ryzen 5 1600 AF

 

I bought UNRAID saying that "dude, change the hardware, use the same flash drive and you are go to go".

That's true. My array is good, my NAS is working with the new hardware. I love Unraid (using 6.9.0-rc2).

 

But, my Windows VM did not allow me to passthrough my GeForce GTX anymore, probably because this is the only GPU in my system (i can see Unraid console using the DVI interface of the graphic card).

That was the case before, but i do not remember how i said to UNRAID te free my graphic card after boot to use it inside a VM.

 

I wil spend time to read again the forum (because i did not take note), but guys, do you any shortcut for me ?

 

I am using the same UNRAID, the same VM (store on the array), the only i have change is the motherboard/CPU/RAM and IOMMU support is activated in the BIOS.

 

Thanks all !

 

Keichi

Edited by Keichi
Problem solved, thanks all !!
Link to comment

Hello,

 

Thanks for the fast reply !

Yes, SpaceInvader is the Bible of UNRAID.

Last year i try the dump vbios / edit hex and it didin't work.

I find another way without it. Probably simpler.

 

Right now, i didn't see my GC in Unraid so, that is sort of the problem :/

 

ozrw.png

 

Link to comment
10 minutes ago, rachid596 said:

In wich group ?

 

IOMMU groups are supposed to be displayed on the page i screenshot.

 

After a quick verification, IOMMU is disable :'(

Don't know why, i enable it in the BIOS.

 

I will wait five hours to my partiy sync finished and enable it again to see if it work better :/

 

34si.png

 

What did you mean by "stub" ?

(Sorry, i am French and the translation did not help me)

Link to comment

Yes, i did that.

Have some trouble to boot the bios after, did a CMOS reset, maybe that is when the IOMMU setting was reset.

 

I wil try again.

VM passtrough with GPU is one of my favorite feature in UNRAID, i definitely need to fix that ^^'

 

Well, docker too. Unraid in global in fact. :$

Link to comment

Ok, so i manage to solve all of that.

 

For record :

- the main problem was indeed IOMMU not enable in the bios.

- i then needed to set "PCIe ACS override:" (Settings > VMs Manager) to "Both" (previously "Multi-function" was enough).

 

- i noticed that i have a user-script (Plugin : "User Scripts") to unplug my CG from UNRAID which launch when i start the array :

#!/bin/bash
echo 0 > /sys/class/vtconsole/vtcon0/bind
echo 0 > /sys/class/vtconsole/vtcon1/bind
echo efi-framebuffer.0 > /sys/bus/platform/drivers/efi-framebuffer/unbind

 

Do not know if it help but...

 

- Then, when i started VMs, Unraid crashes ("flash device error" & Parity 1 disable).

After searching a while, i ended up deleting libvirt.img and recreate it as i suspect some comflict between my previous hardware (intel based) and my new hardware (AMD based).

 

- Finally, i need to recreate my VMs using the old virtual drive and everything was good.

 

Thank you all for your help !!

 

Keichi

 

Link to comment
  • Keichi changed the title to [SOLVED] One GPU Passtrough on Ryzen after upgrade

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.