On 29/03/17 14:28 +0800, yimao wrote:
Thank you very much.
I don't have quadro k2200, but I tried amd firepro s7150 again. There
is no code 43 error. But when I reboot the vm, the remote-viewer's
screen get displaying the "Starting Windows" splash screen, no matter
using spice or vnc protocol.
I tried to use nx protocl, I found the vm boot up all right  and gpu
passthrough is successful.
What is the right way to connect to the gpu passthrough's vm? Are
there any other cards working fine, for example cards in quadro
series.

One of ways to connect to the VM is using the physical port on the
GPU. If you want it just for acceleration, use spice and disable the
second monitor (in Windows' device manager) or set up screen
mirroring.

Quadro K2200 and higher, Tesla, Grid... pretty much all those
"professional" cards *should* work. I believe it's similar with the
AMD.

Best Regards



2017-03-28 16:48 GMT+08:00 Martin Polednik <[email protected]>:
On 28/03/17 16:22 +0800, yimao wrote:

Thanks for your suggestions, I have tried that but problems still
exist. Yes, I used Nvidia GTX 750Ti.

I found the qemu's arguments have changed.

   7210 ?        SLl    0:31 /usr/libexec/qemu-kvm -name
guest=win7_1,debug-threads=on -S -object

secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-16-win7_1/master-key.aes
-machine pc-i440fx-rhel7.3.0,accel=kvm,usb=off -cpu

Broadwell,+rtm,+hle,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff,hv_vendor_id=whatever,kvm=off
-m size=1048576k,slots=16,maxmem=4194304k -realtime mlock=off -smp
1,maxcpus=16,sockets=16,cores=1,threads=1 -numa
node,nodeid=0,cpus=0,mem=1024 -uuid
1fba3bd6-0659-4463-92ea-8efa43411082 -smbios
type=1,manufacturer=oVirt,product=oVirt

Node,version=7-3.1611.el7.centos,serial=031B021C-040D-050E-D806-900700080009,uuid=1fba3bd6-0659-4463-92ea-8efa43411082
-no-user-config -nodefaults -chardev

socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-16-win7_1/monitor.sock,server,nowait
-mon chardev=charmonitor,id=monitor,mode=control -rtc
base=2017-03-28T08:54:41,driftfix=slew -global
kvm-pit.lost_tick_policy=discard -no-hpet -no-shutdown -boot strict=on
-device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device
virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x8 -device
virtio-serial-pci,id=virtio-serial0,max_ports=16,bus=pci.0,addr=0x4
-drive if=none,id=drive-ide0-1-0,readonly=on -device
ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive

file=/rhev/data-center/00000001-0001-0001-0001-000000000311/c053a0c0-45ad-4f7a-b9ce-c1ac90c900d4/images/082d4d4c-3aae-4369-9cbb-e6a7b31c3204/63da97f3-7b1f-406b-905f-b12eeb96d55f,format=raw,if=none,id=drive-scsi0-0-0-0,serial=082d4d4c-3aae-4369-9cbb-e6a7b31c3204,cache=none,werror=stop,rerror=stop,aio=threads
-device
scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-scsi0-0-0-0,id=scsi0-0-0-0,bootindex=1
-netdev tap,fd=33,id=hostnet0,vhost=on,vhostfd=35 -device

virtio-net-pci,netdev=hostnet0,id=net0,mac=00:1a:4a:16:01:51,bus=pci.0,addr=0x3
-chardev
socket,id=charchannel0,path=/var/lib/libvirt/qemu/channels/1fba3bd6-0659-4463-92ea-8efa43411082.com.redhat.rhevm.vdsm,server,nowait
-device
virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm
-chardev
socket,id=charchannel1,path=/var/lib/libvirt/qemu/channels/1fba3bd6-0659-4463-92ea-8efa43411082.org.qemu.guest_agent.0,server,nowait
-device
virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel1,id=channel1,name=org.qemu.guest_agent.0
-device usb-tablet,id=input0,bus=usb.0,port=1 -vnc
192.168.120.235:0,password -k en-us -device

qxl-vga,id=video0,ram_size=67108864,vram_size=8388608,vram64_size_mb=0,vgamem_mb=16,bus=pci.0,addr=0x2
-device vfio-pci,host=01:00.0,id=hostdev0,bus=pci.0,addr=0x6 -device
vfio-pci,host=01:00.1,id=hostdev1,bus=pci.0,addr=0x7 -device
virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 -object
rng-random,id=objrng0,filename=/dev/urandom -device
virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x9 -msg
timestamp=on

Does ovirt use vga passthrough or gpu passthrough? Should I install EDK2
OVMF?


It uses secondary GPU passthrough; the VGA is still occupied by the
spice QXL. No OVMF necessary at all.

That being said, if you still have the problem, I'd try to maybe work
with the hook to also disable hyperv and whatever you find around the
internet. It looks like everyone's card needs something different. To
be on the safe side, quadro k2200 seem to work fine.


Thanks in advance.

2017-03-28 15:17 GMT+08:00 Martin Polednik <[email protected]>:

On 28/03/17 02:12 +0800, yimao wrote:


Hi,

I'm trying to passthrough gpu card to windows 7 guest, but I got the
error code 43.
I use ovirt node: ovirt-node-ng-installer-ovirt-4.1-2017032304.iso and
ovirt-engine-appliance-4.1-20170322.1.el7.centos.noarch.rpm
I have added  options "intel_iommu=on rdblacklist=nouveau
pci-stub.ids=10de:1380,10de:0fbc" to the grub.conf and attached these
devices to the guest. After I have installed the gpu's driver, I got
the error code 43.
Did I miss something? Any pointers or suggestions would be greatly
appreciated.



You are most likely using consumer grade GPU that errors out in
Windows if it's running under virtualized environment. You could try
using the following hook (make sure it's in
/usr/libexec/vdsm/hooks/before_vm_start and it's executable bit is set
(chmod +x ...)).

Just copy paste the following block to a bash and try to start the VM
again.

cd /usr/libexec/vdsm/hooks/before_vm_start
cat << EOF >> 99_mask_kvm
#!/usr/bin/python2

import hooking
domxml = hooking.read_domxml()

hyperv = domxml.getElementsByTagName('hyperv')[0]
smm = domxml.createElement('vendor_id')
smm.setAttribute('state', 'on')
smm.setAttribute('value', 'whatever')
hyperv.appendChild(smm)

features = domxml.getElementsByTagName('features')[0]
kvm = domxml.createElement('kvm')
hidden = domxml.createElement('hidden')
hidden.setAttribute('state', 'on')
kvm.appendChild(hidden)
features.appendChild(kvm)

hooking.write_domxml(domxml)
EOF
chmod +x 99_mask_kvm



Thanks in advance.
Yiimao Yang.
_______________________________________________
Users mailing list
[email protected]
http://lists.ovirt.org/mailman/listinfo/users

Reply via email to