Got it, thanks a lot.
2017-03-29 15:50 GMT+08:00 Martin Polednik <mpoled...@redhat.com>: > 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 <mpoled...@redhat.com>: >>> >>> 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 <mpoled...@redhat.com>: >>>>> >>>>> >>>>> 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 Users@ovirt.org http://lists.ovirt.org/mailman/listinfo/users