[vfio-users] VM doesn't boot if I use GPU passthrough
Ruben Felgenhauer
4felgenh at informatik.uni-hamburg.de
Thu Jan 28 20:43:14 UTC 2016
Hi,
I dug out the box and it says E17505U-C GTX750TI-PH-2GD5
You can find the model here:
https://www.asus.com/Graphics-Cards/GTX750TIPH2GD5/
$ virsh --version
1.3.0
Best regards,
Ruben
Am 28.01.2016 um 21:35 schrieb Ryan Flagler:
> Couple more questions.
>
> Do you have the exact model of your video card? Ideally we want to
> know if it has UEFI support.
>
> What does the following output?
> virsh --version
>
> Thanks
>
> On Thu, Jan 28, 2016 at 2:32 PM Ruben Felgenhauer
> <4felgenh at informatik.uni-hamburg.de
> <mailto:4felgenh at informatik.uni-hamburg.de>> wrote:
>
> Hi,
>
> These are the last few lines:
>
> 01:00.0 VGA compatible controller: NVIDIA Corporation GM107
> [GeForce GTX 750 Ti] (rev a2)
> Kernel driver in use: pci-stub
> Kernel modules: nvidia
> 01:00.1 Audio device: NVIDIA Corporation Device 0fbc (rev a1)
> Kernel driver in use: pci-stub
> Kernel driver in use: ahci
>
> Best regards,
> Ruben
>
>
> Am 28.01.2016 um 21:28 schrieb Ryan Flagler:
>> Ruben,
>>
>> What is your output from this?
>>
>> lspci -k | egrep -i '(nvidia|driver)'
>>
>> Just need the lines with your video card and the driver line
>> below each one of those.
>>
>> On Thu, Jan 28, 2016 at 2:18 PM Ruben Felgenhauer
>> <4felgenh at informatik.uni-hamburg.de
>> <mailto:4felgenh at informatik.uni-hamburg.de>> wrote:
>>
>> Hi again, Will!
>>
>> I had removed the hypervclock tag back then, but forgot to
>> mention it, sorry.
>> In the meantime I played around with the config quite a lot,
>> but nothing helps, always Code 43.
>> I tried to compare your xml file with mine, but nothing
>> really stuck out.
>>
>> Can you remember having done anything special to get the
>> 750ti to work?
>> Did you ever have problems with Code 43 aswell?
>> Is it maybe a problem with other devices or is the gpu simply
>> still noticing the hypervisor?
>> Config is here: http://pastebin.com/fL6PGrM0
>>
>> Best regards,
>> Ruben
>>
>>
>> Am 25.01.2016 um 17:01 schrieb Will Marler:
>>> This is discussed in
>>> http://vfio.blogspot.com/2015/05/vfio-gpu-how-to-series-part-4-our-first.html.
>>> You have to do more than <kvm><hidden state='on'/></kvm>:
>>>
>>> "The GeForce card is nearly as easy, but we first need to
>>> work around some of the roadblocks Nvidia has put in place
>>> to prevent you from using the hardware you've purchased in
>>> the way that you desire (and by my reading conforms to the
>>> EULA for their software, but IANAL). For this step we again
>>> need to run virsh edit on the VM. Within the <features>
>>> section, remove everything between the <hyperv> tags,
>>> including the tags themselves. In their place add the
>>> following tags:
>>>
>>> <kvm>
>>> <hidden state='on'/>
>>> </kvm>
>>>
>>> Additionally, within the <clock> tag, find the timer named
>>> hypervclock, remove the line containing this tag
>>> completely. Save and exit the edit session."
>>>
>>> I can confirm it works, I've been getting a lot of mileage
>>> from my passed-through 750Ti lately since getting a Steam
>>> Link :-D.
>>>
>>> On Sun, Jan 24, 2016 at 7:32 AM, Ruben Felgenhauer
>>> <4felgenh at informatik.uni-hamburg.de
>>> <mailto:4felgenh at informatik.uni-hamburg.de>> wrote:
>>>
>>> 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
>>>>
>>>>
>>>
>>>
>>
>> _______________________________________________
>> 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/20160128/0acf6249/attachment.htm>
More information about the vfio-users
mailing list