[vfio-users] VM doesn't boot if I use GPU passthrough

Ruben Felgenhauer 4felgenh at informatik.uni-hamburg.de
Sun Jan 24 14:32:53 UTC 2016


Hi,

finally I had time to this again. I tried out virt-manager and after a 
bit of playing around with it, it /somewhat/ worked:

The machine is at least booting. I still have a standard vga card 
enabled in the virt-manager config window.
After the machine has booted, I can see that the device gets recognized 
as 750ti.
However, the gpu doesn't get used, because of 'Code 43'.
Code 43 is a generic error, so any idea what it could mean in this case?

Of course I added the <kvm><hidden state='on'/></kvm> lines at the 
associated position.

Best regards,
Ruben

Am 18.01.2016 um 22:27 schrieb Will Marler:
> I'm not sure what correct command-line syntax is. Have you tried using 
> libvirt and VirtManager to handle your VM rather than command line, 
> and modifying the XML rather than the command line? I think that's 
> generally the preferred method these days (it's certainly easier from 
> my point of view, and the way I got my 750 Ti to pass through).
>
> On Mon, Jan 18, 2016 at 11:04 AM, Ruben Felgenhauer 
> <4felgenh at informatik.uni-hamburg.de 
> <mailto:4felgenh at informatik.uni-hamburg.de>> wrote:
>
>     Hi, Alex!
>
>     Thanks for your reply!
>     My GPU indeed has a seperate audio device located at 01:00.1.
>
>     However, just adding -device vfio-pci,host=01:00.1 doesn't seem to
>     do the trick.
>     Of course the corresponding device is already blacklisted and
>     bound to vfio.
>
>     The Debian Wiki entry about VGA passthrough
>     (https://wiki.debian.org/VGAPassthrough) mentions QEMU arguments
>     like "-device
>     vfio-pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on,romfile=...
>     -device vfio-pci,host=01:00.1,bus=pcie.0" which seems to address
>     GPUs with audio devices, but if I try to do something similar, the
>     buses 'root' and 'pcie' couldn't be found. Maybe I missed
>     something very important?
>
>     On the same article, it says that the "HDMI soundcard [...] needs
>     to be unbound from its driver":
>     # echo '0000:01:00.1' | sudo tee
>     /sys/bus/pci/devices/0000:01:00.1/driver/unbind
>     I figured the vfio-bind script from the Arch Linux Forum thread
>     (https://bbs.archlinux.org/viewtopic.php?id=162768) would do
>     exactly this thing, so I didn't explicitly do so for the audio
>     device. Is that okay?
>
>     Best regards,
>     Ruben
>
>
>     Am 18.01.2016 um 08:31 schrieb Alexander Petrenz:
>>     Hi Ruben,
>>
>>     I guess your 750ti also has some audio device. You should pass
>>     through this too. It should be something like 01:00.1. There are
>>     many command line examples you can find about that.
>>     Also I´m not quite sure, if you should remove the x-vga=on.
>>
>>     Regards
>>     Alex
>>
>>     On Sun, Jan 17, 2016 at 11:12 PM, Ruben Felgenhauer
>>     <4felgenh at informatik.uni-hamburg.de
>>     <mailto:4felgenh at informatik.uni-hamburg.de>> wrote:
>>
>>         Hi,
>>
>>         I am trying to pass my nVidia GTX 750ti to my QEMU guest.
>>
>>         Problem is: After the QEMU monitor pops up, nothing happens.
>>         The GPU's output is dead, and the vm won't be accessible via
>>         SSH anymore, so it's very likely that the VM isn't booting up
>>         at all. Also, there are no error messages from QEMU on the
>>         console whatsoever which makes debugging it especially hard.
>>
>>         This is how I start the vm with normal vga emulation:
>>         qemu-system-x86_64 -hda vm.ovl -boot c -enable-kvm -m 1024
>>         -cpu host,kvm=off -smp cores=4,threads=2 -redir tcp:5022::22
>>         Everything runs fine in this case. To do the passthrough, I
>>         add this:
>>         -device vfio-pci,host=01:00.0,multifunction=on,x-vga=on -vga none
>>         This brings said problems with it. I also tried out multiple
>>         different combinations of -device's arguments or even adding
>>         a romfile for the GPU, but none of these steps changed
>>         anything at all.
>>
>>         Obviously, I am using a BIOS installation and I'm well-aware
>>         with this bug:
>>         https://bugzilla.kernel.org/show_bug.cgi?id=107561, but
>>         neither using less RAM (as you can see I am using 1GB now)
>>         nor switching to an older Kernel changed anything about the
>>         problem. I have tried Kernel 4.1.0 and 4.3.0.
>>
>>         Host is Debian testing with QEMU 2.5.0.
>>         I tried both Debian and Windows 7 as a guest, but both are
>>         showing exactly the same behaviour.
>>         Mainboard is an ASUS Z87-PLUS. The 750ti is produced by ASUS
>>         aswell.
>>
>>         Any idea how I could get passthrough running?
>>
>>         _______________________________________________
>>         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/20160124/3f261aed/attachment.htm>


More information about the vfio-users mailing list