Attention amd vfio users do not update your bios

Hmm. Maybe the lack of downgrade is due to Ryzen 3000 specific features (for coming launch) and allowing downgrade could potentially end up with a user with a board that won’t work with their CPU, if they were to say, get a board with BIOS 3.x on it, a Ryzen 3000 and then try to downgrade it.

agesa 0072 I think? there’s a quirk for this though. known bug:

https://clbin.com/GGnxm

get used to compiling your own kernels buddy

Where do you get the error message?

I have a x470 taichi since yesterday. I updated it to Bios version 3.20 and i don´t see that error in my System logs.

I am passing through a Sapphire Nitro + Vega 64.
I disabled “ROM BAR” in virt-manager.

Edit: So i got the error some time after i shut down my windows VM.

1 Like

sorry I’m not used to putting my own bits of code in the kernel. Whereabouts do I put this bit of code exactly?

It’s a diff, the hint is here:

diff --git a/drivers/pci/quirks.c b/drivers/pci/quirks.c

It is in your kernel souce directory, then drivers/pci/quirks.c

I’d suggest just waiting for a new kernel release that fixes it unless you’re keen on hacking kernel source and recompiling.

I used to compile custom kernels all the time back in the day but now can’t be bothered since about 2004. I’m not trying to fit linux on a 486 with 4MB RAM any more (and almost everything can be made a module now)… so not sure how much of a pain in the balls/time sink it is these days.

the last AMD agesa based issue took almost a year to correct IIRC, if he already uses vfio that may not be an option. no idea if this patch is even on their radar atm

this is for sure on the radar. I feel confident about MSI and Gigabyte having a workable solution before launch, but that might be same bios version with two agesas… not sure. I’m working on it now though.

2 Likes

good to know. I’ve been putting out fires in various vfio hobby channels for a while now on this one, and it’s been very frustrating for quite a few newcomers.

“oh, just compile a custom kernel” just isn’t an acceptable answer for a lot of people.

5 Likes

I’m perfectly happy compiling my own kernel if it fixes this problem. Thank you very much for the information! I will figure it out. I always do.

OK, I think I’ve done everything correctly to setup a patched compilation of the kernel (using arch). Do I need to alter that code you posted at all to in regards to those PCI-E addresses at the bottom to match my own? Or do they encompass all of my x16 slots? ./lsiommu.sh shows my card to be something that looks different from that patch, but it’s also formatted differently, so I’m not sure.

Sorry mate i’m not sure what the code does and i don’t run VFIO at the moment.

That diff shows the differences between two files under two different folders.

Other than that don’t have the time/inclination to investigate myself, sorry.

Can you show me where you found that patch at least? I need to read a bit more before I boot into this kernel. I’ve found similar looking patches with a google search, but not that particular version.

I’m not the one who posted it :slight_smile:

Woops, sorry, I meant to address my last couple of comments to you.

well, i figured out the formatting per my pci ids, i compiled the kernel and booted into it. And I’m able to boot my VM and get display from the guest gpu! … for one boot per host boot. I need to reboot my entire machine if I am to get it to boot again…close but no cigar I guess?

do you have any experience with applying that patch?

I suspect they might point you at the website they contribute to, but I don’t know the page.
Maybe:

This is one of the reasons why mobo manufacturers should,
put dual bios chips with physical switch on their boards.
Instead of useless RGB.

Still kinda interesting…

In my opinion its always better to wait a while before jumping on a new bios.
So that issues like this can be iron’d out.

2 Likes

gigabyte dual bios is throroughly useless because they don’t let you switch them manually on most boards but generally yes.

oh hey man sorry, didnt see those early replies

procedure varies a little from distro to distro but you either edit the source lines yourself or make a patch file and follow the patching procedure provided in a tutorial that matches your distro and release number.

this particular workaround is only known good on some boards so far tho so there’s no guarantees.

if you need live support on it ask over here: