[vfio-users] Problems with R9 290 audio

Carlos Eduardo P. Guidugli guidugli at gmail.com
Sat Jun 25 02:34:01 UTC 2016


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.

Thanks

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,server,
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=pci
e.0,addr=0x1 \
-msg timestamp=on \
-device
ioh3420,bus=pcie.0,addr=1c.0,multifunction=on,port=1,chassis=1,id=root.
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/kvm
/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 &




More information about the vfio-users mailing list