[vfio-users] Nvidia Code 43 on Fedora 24 host and Windows 10 guest.

Thomas Lindroth thomas.lindroth at gmail.com
Wed Oct 5 14:35:08 UTC 2016

On 10/05/2016 09:28 AM, Dawid Osuchowski wrote:> I've ran dd if=NV287MH.2K0 of=strip bs=1 skip=1536, put the ROM file in
> /usr/share/qemu, run restorecon on it and it started working! I'm so
> thankful for both of you Alex and Thomas, i've been trying to get it to
> work for at least 4-5 days and you've helped me in just one day. While
> we are still here, do you have any recommendations on optimizing the VM
> so it runs smoothly almost as a native OS and how should i interact with
> the VM? I've seen an article on
> https://rokups.github.io/blog/#!pages/kvm-hid.md that made a software
> KVM switch, would that be good?

this post explains ways of reducing latency for gaming but be aware that
reducing latency also tends to reduce performance.

I use synergy to share mouse and keyboard. Apparently they've switched to
a pay model but you can still get betas for free: https://symless.com/nightly
Using the "input-linux" driver for recent versions of qemu is also popular
but you won't get shared clipboard with that.

The virtual soundcards in qemu doesn't work so well. I get the audio out
over hdmi. I then loop an audio cable from the audio out on my monitor
to the line-in on my regular soundcard. That way the sound from the host
and guest are mixed together and I can control the volume independently.
There are some issues with hdmi audio which is explained here:

>>> On 10/05/2016 03:46 AM, Alex Williamson wrote:
>>>> If you want to send me your ROM file, I'll compare to mine and see
>>>> whether it works with my card (not sure whether it should or not given
>>>> different vendors).  Thanks,  
>>> This conversation from irc explains where that strip.rom file comes from.
>>> <tulphoon> Hello. I've extracted ROM file from my card and i would like to apply UEFI "patch" to it. How should i do it? I don't want to use nvflash directly on the card.
>>> <tulphoon> My card is MSI GTX 660, and i've got the "patch" file from this thread https://forum-en.msi.com/index.php?topic=274331.0
>>> <tulphoon> Basically i want to merge the two files (if that's even possible) and have single EFI compatible file in the end.
>>> <tholin>   I see no mentioning of "patch" in that thread. It looks like just a .rom file. Use that rom instead of the one you dumped.
>>> <tulphoon> That one doesn't qualify as rom tho.
>>> <tulphoon> at least, EfiRom -d throws out error: 3001
>>> <tholin>   looks like you are right, it's some metadata format
>>> <tulphoon> but i don't want to nvflash it tho.
>>> <tulphoon> Unless that's the last solution
>>> <tholin>   the real vbios is embedded in it. It starts at byte offset 1536 and I suppose it's 128K big like most vbios.
>>> <tulphoon> probably the nvflash thingy is able to strip the thign and make it work.
>>> <tulphoon> the thing*
>>> <tholin>   try running this on it "dd if=NV287MH.2K0 of=strip bs=1 skip=1536 count=131072"
>>> <tulphoon> okay, gimme a sec.
>>> <tholin>   the vbios rom-parser can parse the resultant file
>>> <tulphoon> holy fuck
>>> <tulphoon> you are a genius sir.
>>> <tulphoon> wait.
>>> <tulphoon> Okay, the rom is working and has EFI support.
>>> <tulphoon> but i'm still getting Code 43 on my Win 10 VM.
>>> <tulphoon> I'll investigate further tomorrow though. Huge thank you for help tholin :)
>>> <tholin>   np
>>> Perhaps the real rom is larger than 128K? That seems unlikely.
>>> At least you can recreate that stripping and get the same rom.
>> Yes, it is more than 128K, mine and the one in that rar archive.  That
>> could very well be the problem.  Dawid, repeat what you did above, but
>> remove the count=131072 part of the dd command, which will just let it
>> run to the end of the file.  Thanks Thomas, that could very well be the
>> key.
>> Alex

I'm not such a genius after all. Glad you found an answer.

More information about the vfio-users mailing list