Solved the problem. For some reason, audio and GPU do not work under the same bus (root.1). I upgraded my workstation to Fedora 24, which include newer libvirt version which allow the addition of ioh3420. So, I did add the video card to it, as explained in https://www.redhat.com/ archives/vfio-users/2016-January/msg00301.html. Again, if I add the R9 sound on the same bus, it gives me a BSOD. But now if I add the R9 audio to the pci.2 bus, it works; it no longer gives me a code 10. Probably some patch related to this code 10 was integrated into the newer version.
Thanks On Sat, 2016-06-25 at 00:03 -0300, Carlos Eduardo P. Guidugli wrote: > Hi, > > I have a Sapphire Tri-x R9 290 which I used to assign to a Windows > virtual machine using virt-manager. When I tried to install latest > drivers, I started to received some BSOD. Reading the forums I found > the recommendation of using ioh3420. I created a new virtual machine > based on Q35 and using UEFI, and after some trial and error, > everything > works except the R9 290 sound. If I assign audio as -device vfio- > pci,host=01:00.1,bus=pcie.0,addr=00.1 , I start getting > video_tdr_failure blue screen. If I change to other address, > everything > works except audio from R9 which fails with code 10. Tried to move > audio to pci.2 and pci.1 and both fails with code 10 as well. If I > change to pcie.0, it does not show any failure on device manager but > it > doesn't really work: if I try to test the audio, it freezes the VM > for > some time. I believe I am out of options now. Can someone help me? > > Using Fedora 23 with libvirt 1.2.18 and qemu 2.4.1. Most of the > parameters below were generated by virsh domxml-to-native. > > Thank you > > LC_ALL=C PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin \ > /usr/bin/qemu-kvm -name Gaming -machine pc-q35-2.4,accel=kvm,usb=off > \ > -monitor unix:./gaming-sock,server,nowait \ > -cpu host,kvm=off,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff \ > -drive file=/etc/edk2/OVMF_CODE-pure- > efi.fd,if=pflash,format=raw,unit=0,readonly=on \ > -drive > file=/var/lib/libvirt/qemu/nvram/Gaming_VARS.fd,if=pflash,format=raw, > un > it=1 \ > -m 12288 \ > -realtime mlock=off \ > -smp 8,sockets=1,cores=4,threads=2 \ > -uuid 72f43879-1829-456f-b257-366c41234fbe \ > -no-user-config \ > -nodefaults \ > -chardev > socket,id=charmonitor,path=/var/lib/libvirt/qemu/Gaming.monitor,serve > r, > nowait \ > -mon chardev=charmonitor,id=monitor,mode=control \ > -rtc base=localtime,driftfix=slew \ > -global kvm-pit.lost_tick_policy=discard \ > -no-hpet \ > -no-shutdown \ > -global ICH9-LPC.disable_s3=1 \ > -global ICH9-LPC.disable_s4=1 \ > -boot d,menu=on,strict=on \ > -device i82801b11-bridge,id=pci.1,bus=pcie.0,addr=0x1e \ > -device pci-bridge,chassis_nr=2,id=pci.2,bus=pci.1,addr=0x1 \ > -device ich9-usb-ehci1,id=usb,bus=pci.2,addr=0x2.0x7 \ > -device ich9-usb- > uhci1,masterbus=usb.0,firstport=0,bus=pci.2,multifunction=on,addr=0x2 > \ > -device ich9-usb- > uhci2,masterbus=usb.0,firstport=2,bus=pci.2,addr=0x2.0x1 \ > -device ich9-usb- > uhci3,masterbus=usb.0,firstport=4,bus=pci.2,addr=0x2.0x2 \ > -device virtio-scsi-pci,id=scsi0,bus=pci.2,addr=0x4 \ > -device virtio-serial-pci,id=virtio-serial0,bus=pci.2,addr=0x3 \ > -drive 'file=/Storage/Data/Softwares/SO > Images/Windows/Win10_EnglishInternational_x64.iso,if=none,media=cdrom > ,i > d=drive-sata0-0-0,readonly=on,format=raw' \ > -device ide-cd,bus=ide.0,drive=drive-sata0-0-0,id=sata0-0-0 \ > -drive 'file=/Storage/Data/Softwares/SO Images/Windows/virtio- > win.iso,if=none,media=cdrom,id=drive-sata0-0- > 1,readonly=on,format=raw' > \ > -device ide-cd,bus=ide.1,drive=drive-sata0-0-1,id=sata0-0-1 \ > -drive file=/opt/kvm/images2/Gaming.qcow2,if=none,id=drive-scsi0-0-0- > 2,format=qcow2 \ > -device scsi-hd,bus=scsi0.0,channel=0,scsi-id=0,lun=2,drive=drive- > scsi0-0-0-2,id=scsi0-0-0-2,bootindex=1 \ > -netdev tap,id=hostnet0,script=/etc/ovs-ifup,downscript=/etc/ovs- > ifdown > \ > -device virtio-net- > pci,netdev=hostnet0,id=net0,mac=52:54:00:22:a1:78,bus=pci.2,addr=0x1 > \ > -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 \ > -spice port=5901,addr=127.0.0.1,disable-ticketing,seamless- > migration=on > \ > -chardev spicevmc,id=charredir0,name=usbredir \ > -device usb-redir,chardev=charredir0,id=redir0 \ > -chardev spicevmc,id=charredir1,name=usbredir \ > -device usb-redir,chardev=charredir1,id=redir1 \ > -device virtio-balloon-pci,id=balloon0,bus=pci.2,addr=0xa \ > -device qxl- > vga,id=video0,ram_size=67108864,vram_size=67108864,vgamem_mb=16,bus=p > ci > e.0,addr=0x1 \ > -msg timestamp=on \ > -device > ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=roo > t. > 1 \ > -device > ioh3420,bus=pcie.0,multifunction=on,port=2,chassis=2,id=root.2 > \ > -device > ioh3420,bus=pcie.0,multifunction=on,port=3,chassis=3,id=root.3 > \ > -device vfio- > pci,host=01:00.0,bus=root.1,addr=00.0,multifunction=on,romfile=/opt/k > vm > /images/Sapphire.R9290.4096.140115_1.rom \ > -device vfio-pci,host=01:00.1,bus=pcie.0,addr=09.0 \ > -device vfio-pci,host=00:1a.0,bus=root.2,addr=00.0 \ > -device vfio-pci,host=00:1b.0,bus=root.3,addr=00.0 & _______________________________________________ vfio-users mailing list vfio-users@redhat.com https://www.redhat.com/mailman/listinfo/vfio-users