[vfio-users] GPU passthrough with Intel KVMGT, Nvidia card gets subsystem id 00000000 when passed through
Jack Coulter
jscinoz at jscinoz.so
Tue Jul 12 06:45:03 UTC 2016
Hi János,
Unfortunately I'm not sure what the next step would be at this point. I
suspect the VBIOS dump you got from Nouveau may not be correct, but this
is little more than a guess. Given that the VBIOS is part of the main
BIOS, you may need to extract it in some alternate way, however I can't
say I know how to go about doing this. Hopefully someone else on the
list will be able to provide a more useful response.
Kind regards,
Jack
On 12/07/16 10:47, János Horváth wrote:
> Hi Jack,
>
> Thanks for your reply.
>
> I have a native Windows 8.1 64bit system in dual boot currently, so I
> didn't need the bootable USB trick.
> The problem is that I have already tried dumping the VBIOS with GPU-Z
> and it has failed. Apparently this GTX860M Maxwell GPU is somewhat
> different and GPU-Z can't save the VBIOS. I have also read that the
> VBIOS in this case is not in the card itself, rather it is included in
> the main BIOS of the laptop.
>
> Regards,
> János
>
> On Tue, Jul 12, 2016 at 2:40 AM Jack Coulter <jscinoz at jscinoz.so> wrote:
>
> Hi János,
>
> I had problems myself when trying to extract a card's firmware via
> Nouveau - the resulting VBIOS images gave me the same issue in the
> VM -
> a subsystem ID of all zeros. On a hunch, I made a bootable Windows USB
> and dumped the VBIOS with GPU-Z - this resulting binary then
> worked with
> VFIO. You could give this a try and see if it resolves your issue. You
> can use rufus (https://github.com/pbatard/rufus) to create a live
> Windows environment ("Windows to Go" is the option you're after).
>
> Curious to hear how this goes, as I've recently acquired an Optimus
> system myself and have been wondering if KVMGT + VFIO would finally
> allow for Optimus to work in a VM.
>
>
> Kind regards,
> Jack
>
> On 11/07/16 06:26, János Horváth wrote:
> > Hi all,
> >
> > I'm trying to get native Windows gaming performance while running
> > Linux on my Optimus laptop (Lenovo Y50).
> > Hardware:
> > CPU: Intel Core i7-4710HQ
> > RAM: 16GB DDR3 1600MHz
> > GPU: Nvidia GeForce GTX860M & Intel HD 4600
> > It supports IOMMU and all the requirements for the pci passthrough.
> >
> > I have found a project by Intel, KVMGT
> >
> (https://01.org/igvt-g/blogs/wangbo85/2016/intel-gvt-g-kvmgt-public-release-q12016)
> > which lets me share the Intel Integrated Graphics (HD 4600) between
> > the host and the guest, so I thought that I could replicate the
> > Optimus feature inside the VM, while the host would be running
> on the
> > Intel HD 4600. I installed Intel's test release to the laptop
> (Ubuntu
> > 14.04 64bit with kernel 4.3.0 patched with support for KVMGT, and a
> > patched QEMU and SeaBios) and created a Windows 8.1 64bit VM.
> > It works great, the VM recognizes the Intel HD 4600 and I am able to
> > choose which machine's (host or guest) screen to show on my display.
> > (By the way this (Intel's) solution is by far the best for this
> > purpose as I am able to switch between which OS to show on the
> > displays not having to only rely on which monitor is plugged to
> which
> > output)
> > The problem is (as expected) with the Nvidia GTX860M. I am able to
> > pass through the device, but in Windows Device Manager, it shows the
> > vendor and device ID correctly, but the subsystem shows as 00000000,
> > so I am of course unable to install any driver.
> > I have tried to use the vBIOS of the Nvidia card with the romfile
> > option of QEMU, but it does not help (I extracted the vBIOS,
> which is
> > not UEFI capable btw, with nouveau driver from a live system).
> >
> > Here is the command I use to start QEMU:
> > sudo /usr/bin/qemu-system-x86_64 -m 2048 -smp 2 -M pc -name kvmgt
> > -drive
> >
> file=/media/hjanos/Hjanos2TB/VM/GPU/GPU-intel.img,format=raw,index=0,media=disk
> > -cdrom
> >
> /media/hjanos/Hjanos2TB/ISO/en_windows_8.1_with_update_x64_dvd_4065090.iso
> > -bios /usr/bin/bios.bin -enable-kvm -vgt -vga vgt -display sdl
> > -machine kernel_irqchip=on -vgt_high_gm_sz 384 -vgt_low_gm_sz 128
> > -vgt_fence_sz 4 -cpu
> >
> host,kvm=off,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff,hv_vendor_id=Nvidia43FIX
> > -usb -usbdevice tablet -net nic -net
> tap,script=/home/hjanos/qemu-ifup
> > -net user,smb=/home/hjanos -device
> >
> vfio-pci,host=01:00.0,romfile=/media/hjanos/Hjanos2TB/VM/GPU/vbios.rom
> >
> > I need help to figure out why does the subsystem id gets changed to
> > 00000000 when I pass through the Nvidia card, as I beleive that
> makes
> > the driver unable to install. (it is not code 43 as usual, rather it
> > is code 28)
> >
> > Please let me know if you need any additional details.
> >
> > Thanks,
> > Janos
> >
> >
> > _______________________________________________
> > vfio-users mailing list
> > vfio-users at redhat.com <mailto:vfio-users at redhat.com>
> > https://www.redhat.com/mailman/listinfo/vfio-users
>
>
> _______________________________________________
> vfio-users mailing list
> vfio-users at redhat.com <mailto:vfio-users at redhat.com>
> https://www.redhat.com/mailman/listinfo/vfio-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20160712/5c0170bc/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20160712/5c0170bc/attachment.sig>
More information about the vfio-users
mailing list