[vfio-users] kvm=off - hypervisor guest status = true

Alex Williamson alex.williamson at redhat.com
Fri May 19 15:47:25 UTC 2017


On Fri, 19 May 2017 12:56:50 +0200
Lars Heer <l.heer at gmx.de> wrote:

> Hi,
> 
> I'm currently tryin to find out why I'm running into nidia gtx 1050 ti - 
> windows 10 - driver installation issues.
> 
> 
> I've found out that the machine still shows that it is running in 
> virtual guest:
> 
> root at debian:~# cpuid  | grep -i hypervisor
>        hypervisor guest status                 = true
>     hypervisor_id = "@  @      "
> 
> 
> Setting of vendorid seem to work. It was something with "KVMKVM..." before.
> 
> I have not clue why this happens...

kvm=off masks the KVM cpuid leaf, it does not disable the guest's
ability to detect that it runs in a VM, only that it runs in a KVM VM.
This is expected.

> Maybe someone has seen such behaviour before.
> 
> I'm currently using:
> 
>      debian 9
> 
>      4.9.0-2-amd64
> 
>      qemu 2.8+dfsg-4+b2
> 
> Passthrough works in geral but only has the windows driver issue. I 
> guess that the "hypervisor guest status" value is the flag which is the 
> cause for it.
> 
> Command line looks like this (I started a linux machine inside to get 
> the cpuid output):
> 
> root at wald:/var/lib/libvirt/images# ps -lef | grep win10
> 6 S libvirt+ 21208     1  0  80   0 - 2591638 SyS_pp 11:49 ? 00:00:27 
> /usr/bin/qemu-system-x86_64 -name 
> guest=win10-pro1-clone,debug-threads=on -S -object 
> secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-36-win10-pro1-clone/master-key.aes 
> -machine pc-i440fx-2.8,accel=kvm,usb=off,vmport=off,dump-guest-core=off 
> -cpu host,hv_vendor_id=whatever,kvm=off -drive 
> file=/var/lib/libvirt/bios/win10-pro-1.OVMF_CODE-pure-efi.fd,if=pflash,format=raw,unit=0 
> -drive 
> file=/var/lib/libvirt/nvram/win10-pro-1.VARS.fd,if=pflash,format=raw,unit=1 
> -m 8192 -realtime mlock=off -smp 3,sockets=3,cores=1,threads=1 -uuid 
> c6874053-9fa1-4ae1-afee-eb860b5e44b2 -no-user-config -nodefaults 
> -chardev 
> socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-36-win10-pro1-clone/monitor.sock,server,nowait 
> -mon chardev=charmonitor,id=monitor,mode=control -rtc 
> base=localtime,driftfix=slew -global kvm-pit.lost_tick_policy=delay 
> -no-hpet -no-shutdown -global PIIX4_PM.disable_s3=1 -global 
> PIIX4_PM.disable_s4=1 -boot strict=on -device 
> pci-bridge,chassis_nr=1,id=pci.1,bus=pci.0,addr=0x4 -device 
> ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x5.0x7 -device 
> ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x5 
> -device 
> ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x5.0x1 
> -device 
> ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x5.0x2 
> -device ahci,id=sata0,bus=pci.0,addr=0x8 -device 
> virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x6 -drive 
> file=/var/lib/libvirt/images/win10-pro1-clone.qcow2,format=qcow2,if=none,id=drive-virtio-disk0,cache=writethrough 
> -device 
> virtio-blk-pci,scsi=off,bus=pci.0,addr=0x9,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 
> -drive if=none,id=drive-ide0-0-0,readonly=on -device 
> ide-cd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=2 
> -drive 
> file=/var/lib/libvirt/iso/gtx1050ti.asus.v1361.iso,format=raw,if=none,id=drive-ide0-0-1,readonly=on 
> -device ide-cd,bus=ide.0,unit=1,drive=drive-ide0-0-1,id=ide0-0-1 -netdev 
> tap,fd=36,id=hostnet0 -device 
> e1000,netdev=hostnet0,id=net0,mac=52:54:00:9f:4a:84,bus=pci.0,addr=0x3 
> -chardev pty,id=charserial0 -device 
> isa-serial,chardev=charserial0,id=serial0 -chardev 
> spicevmc,id=charchannel0,name=vdagent -device 
> virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0 
> -device usb-tablet,id=input0,bus=usb.0,port=1 -spice 
> port=5905,tls-port=5906,addr=0.0.0.0,disable-ticketing,x509-dir=/etc/pki/libvirt-spice,seamless-migration=on 
> -device 
> qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pci.0,addr=0xc 
> -device intel-hda,id=sound0,bus=pci.1,addr=0x1 -device 
> hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev 
> spicevmc,id=charredir0,name=usbredir -device 
> usb-redir,chardev=charredir0,id=redir0,bus=usb.0,port=2 -chardev 
> spicevmc,id=charredir1,name=usbredir -device 
> usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=3 -device 
> vfio-pci,host=01:00.0,id=hostdev0,bus=pci.0,addr=0x2,romfile=/var/lib/libvirt/rom/evga_gtx1050.dump,multifunction=on,x-vga=on 
> -device vfio-pci,host=01:00.1,id=hostdev1,bus=pci.0,addr=0xb -device 
> virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 -msg timestamp=on -vga 
> none

You have QXL graphics which nvidia doesn't usually like.  You're
passing a ROM file, which is often just as likely to cause problems as
solve them if there's something subtly wrong with the image you're
using.  Guest driver issues can also be a result of the handling of the
card in the host, for instance the device being used as primary
graphics in the host or allowing host drivers other than vfio-pci or
pci-stub to attach to the device.  Thanks,

Alex




More information about the vfio-users mailing list