[vfio-users] SB X-Fi Titanium passthrough

Bradley Davis bradleydavisjr at gmail.com
Thu Feb 11 20:14:53 UTC 2016


I don't have anything to add other than I got my pcie based SB Z working
without issue.

On Mon, Feb 8, 2016 at 11:25 PM, Daniel Browne <jairuncaloth at gmail.com>
wrote:

> Hello,
>
> I have a Win7 x64 Pro guest on a Fedora 22 host. Using VFIO-PCI to pass
> through my graphics and audio cards. I'm managing my VMs through VMM. It's
> been up and running for months mostly successfully except for one stupid
> little problem I haven't been able to solve.
>
> I've been attempting to get my Creative X-Fi Titanium sound card working
> correctly in the guest. If I let windows use generic drivers, it works well
> enough to provide basic audio (occasionally the audio just crashes and the
> system has to be rebooted before it works again but that's somewhat rare).
> I wanted to install the official drivers to take advantage of the card's
> full capabilities (such as surround emulation for headphones).
>
> Once I install the official drivers, the device shows up in device
> manager, volume controls are there, windows says the device is working, but
> audio doesn't work. Attempting to play a test in the speaker properties
> results in an error 'failed to play test tone'. I've gone through all the
> standard hints and tips and tricks I've been able to find to get the
> drivers working in Win7.
>
> I'm starting to suspect some kind of resource conflict. Sometimes upon
> boot after installing drivers my keyboard will fail to function. Boot up
> takes much longer than normal as well. In the linux console, I'll see
> messages pop up such as "kernel:Disabling IRQ #11". My most recent attempt
> involved enabling MSI as described here
> http://vfio.blogspot.com/2014/09/vfio-interrupts-and-how-to-coax-windows.html?m=1
> thinking it might be related. While the guest OS happily switches it over
> to MSI, it doesn't help.
>
> This forum thread shows another person in a similar situation.
> https://lime-technology.com/forum/index.php?topic=42459.0
>
> I'm pretty much out of ideas. If anyone has anything else I'd love to hear
> it.
> Including any relevant config info I can think of below:
>
> Mobo: ASRock Z97 Pro4
> CPU: i7-4790K
>
> $ uname -r
> 4.2.8-200.fc22.x86_64
>
> GRUB_CMDLINE_LINUX="rhgb quiet intel_iommu=on splash
> pci-stub.ids=10de:13c2,10de:0fbb,1102:000b pcie_acs_override=downstream"
>
> $ lspci
> 00:00.0 Host bridge: Intel Corporation 4th Gen Core Processor DRAM
> Controller (rev 06)
> 00:01.0 PCI bridge: Intel Corporation Xeon E3-1200 v3/4th Gen Core
> Processor PCI Express x16 Controller (rev 06)
> 00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th
> Gen Core Processor Integrated Graphics Controller (rev 06)
> 00:03.0 Audio device: Intel Corporation Xeon E3-1200 v3/4th Gen Core
> Processor HD Audio Controller (rev 06)
> 00:14.0 USB controller: Intel Corporation 9 Series Chipset Family USB xHCI
> Controller
> 00:16.0 Communication controller: Intel Corporation 9 Series Chipset
> Family ME Interface #1
> 00:19.0 Ethernet controller: Intel Corporation Ethernet Connection (2)
> I218-V
> 00:1a.0 USB controller: Intel Corporation 9 Series Chipset Family USB EHCI
> Controller #2
> 00:1c.0 PCI bridge: Intel Corporation 9 Series Chipset Family PCI Express
> Root Port 1 (rev d0)
> 00:1c.2 PCI bridge: Intel Corporation 82801 PCI Bridge (rev d0)
> 00:1c.7 PCI bridge: Intel Corporation 9 Series Chipset Family PCI Express
> Root Port 8 (rev d0)
> 00:1d.0 USB controller: Intel Corporation 9 Series Chipset Family USB EHCI
> Controller #1
> 00:1f.0 ISA bridge: Intel Corporation 9 Series Chipset Family Z97 LPC
> Controller
> 00:1f.2 SATA controller: Intel Corporation 9 Series Chipset Family SATA
> Controller [AHCI Mode]
> 00:1f.3 SMBus: Intel Corporation 9 Series Chipset Family SMBus Controller
> 01:00.0 VGA compatible controller: NVIDIA Corporation GM204 [GeForce GTX
> 970] (rev a1)
> 01:00.1 Audio device: NVIDIA Corporation GM204 High Definition Audio
> Controller (rev a1)
> 03:00.0 PCI bridge: ASMedia Technology Inc. ASM1083/1085 PCIe to PCI
> Bridge (rev 03)
> 05:00.0 Audio device: Creative Labs EMU20k2 [X-Fi Titanium Series] (rev 04)
>
> <domain type='kvm' id='6'>
>   <name>win7</name>
>   <uuid>54b2fed9-e7d8-4624-a674-ec355e76eb32</uuid>
>   <title>TheBria-VM</title>
>   <description>Win7 with pcie passthrough</description>
>   <memory unit='KiB'>12582912</memory>
>   <currentMemory unit='KiB'>12582912</currentMemory>
>   <vcpu placement='static'>4</vcpu>
>   <cputune>
>     <vcpupin vcpu='0' cpuset='2'/>
>   </cputune>
>   <resource>
>     <partition>/machine</partition>
>   </resource>
>   <os>
>     <type arch='x86_64' machine='pc-i440fx-2.3'>hvm</type>
>     <loader readonly='yes'
> type='pflash'>/usr/share/edk2.git/ovmf-x64/OVMF_CODE-pure-efi.fd</loader>
>     <nvram>/var/lib/libvirt/qemu/nvram/win7_VARS.fd</nvram>
>     <boot dev='hd'/>
>   </os>
>   <features>
>     <acpi/>
>     <apic/>
>     <pae/>
>     <kvm>
>       <hidden state='on'/>
>     </kvm>
>   </features>
>   <cpu mode='host-passthrough'/>
>   <clock offset='localtime'>
>     <timer name='rtc' tickpolicy='catchup'/>
>     <timer name='pit' tickpolicy='delay'/>
>     <timer name='hpet' present='no'/>
>   </clock>
>   <on_poweroff>destroy</on_poweroff>
>   <on_reboot>restart</on_reboot>
>   <on_crash>restart</on_crash>
>   <pm>
>     <suspend-to-mem enabled='no'/>
>     <suspend-to-disk enabled='no'/>
>   </pm>
>   <devices>
>     <emulator>/usr/bin/qemu-kvm</emulator>
>     <disk type='file' device='disk'>
>       <driver name='qemu' type='raw'/>
>       <source file='/home/dbrowne/storage/ssd/win7.qcow2'/>
>       <backingStore/>
>       <target dev='sdc' bus='scsi'/>
>       <alias name='scsi0-0-0-2'/>
>       <address type='drive' controller='0' bus='0' target='0' unit='2'/>
>     </disk>
>     <disk type='block' device='cdrom'>
>       <driver name='qemu' type='raw'/>
>       <backingStore/>
>       <target dev='hda' bus='ide'/>
>       <readonly/>
>       <alias name='ide0-0-0'/>
>       <address type='drive' controller='0' bus='0' target='0' unit='0'/>
>     </disk>
>     <controller type='usb' index='0' model='ich9-ehci1'>
>       <alias name='usb0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x05'
> function='0x7'/>
>     </controller>
>     <controller type='usb' index='0' model='ich9-uhci1'>
>       <alias name='usb0'/>
>       <master startport='0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x05'
> function='0x0' multifunction='on'/>
>     </controller>
>     <controller type='usb' index='0' model='ich9-uhci2'>
>       <alias name='usb0'/>
>       <master startport='2'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x05'
> function='0x1'/>
>     </controller>
>     <controller type='usb' index='0' model='ich9-uhci3'>
>       <alias name='usb0'/>
>       <master startport='4'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x05'
> function='0x2'/>
>     </controller>
>     <controller type='pci' index='0' model='pci-root'>
>       <alias name='pci.0'/>
>     </controller>
>     <controller type='ide' index='0'>
>       <alias name='ide0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x01'
> function='0x1'/>
>     </controller>
>     <controller type='scsi' index='0' model='virtio-scsi'>
>       <alias name='scsi0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x06'
> function='0x0'/>
>     </controller>
>     <interface type='bridge'>
>       <mac address='de:ad:be:ef:7a:10'/>
>       <source bridge='br0'/>
>       <target dev='vnet0'/>
>       <model type='virtio'/>
>       <alias name='net0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x02'
> function='0x0'/>
>     </interface>
>     <serial type='pty'>
>       <source path='/dev/pts/2'/>
>       <target port='0'/>
>       <alias name='serial0'/>
>     </serial>
>     <console type='pty' tty='/dev/pts/2'>
>       <source path='/dev/pts/2'/>
>       <target type='serial' port='0'/>
>       <alias name='serial0'/>
>     </console>
>     <hostdev mode='subsystem' type='usb' managed='yes'>
>       <source>
>         <vendor id='0x0556'/>
>         <product id='0x0001'/>
>         <address bus='1' device='2'/>
>       </source>
>       <alias name='hostdev0'/>
>     </hostdev>
>     <hostdev mode='subsystem' type='usb' managed='yes'>
>       <source>
>         <vendor id='0x046d'/>
>         <product id='0xc07d'/>
>         <address bus='1' device='4'/>
>       </source>
>       <alias name='hostdev1'/>
>     </hostdev>
>     <hostdev mode='subsystem' type='usb' managed='yes'>
>       <source>
>         <vendor id='0x1532'/>
>         <product id='0x010e'/>
>         <address bus='1' device='5'/>
>       </source>
>       <alias name='hostdev2'/>
>     </hostdev>
>     <hostdev mode='subsystem' type='pci' managed='yes'>
>       <driver name='vfio'/>
>       <source>
>         <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
>       </source>
>       <alias name='hostdev3'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x03'
> function='0x0'/>
>     </hostdev>
>     <hostdev mode='subsystem' type='pci' managed='yes'>
>       <driver name='vfio'/>
>       <source>
>         <address domain='0x0000' bus='0x01' slot='0x00' function='0x1'/>
>       </source>
>       <alias name='hostdev4'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x04'
> function='0x0'/>
>     </hostdev>
>     <hostdev mode='subsystem' type='usb' managed='yes'>
>       <source>
>         <vendor id='0x1b1c'/>
>         <product id='0x0c02'/>
>         <address bus='1' device='3'/>
>       </source>
>       <alias name='hostdev5'/>
>     </hostdev>
>     <hostdev mode='subsystem' type='pci' managed='yes'>
>       <driver name='vfio'/>
>       <source>
>         <address domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
>       </source>
>       <alias name='hostdev6'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x07'
> function='0x0'/>
>     </hostdev>
>     <redirdev bus='usb' type='spicevmc'>
>       <alias name='redir0'/>
>     </redirdev>
>     <redirdev bus='usb' type='spicevmc'>
>       <alias name='redir1'/>
>     </redirdev>
>     <memballoon model='virtio'>
>       <alias name='balloon0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x08'
> function='0x0'/>
>     </memballoon>
>     <rng model='virtio'>
>       <backend model='random'>/dev/random</backend>
>       <alias name='rng0'/>
>       <address type='pci' domain='0x0000' bus='0x00' slot='0x09'
> function='0x0'/>
>     </rng>
>   </devices>
>   <seclabel type='dynamic' model='selinux' relabel='yes'>
>     <label>system_u:system_r:svirt_t:s0:c261,c401</label>
>     <imagelabel>system_u:object_r:svirt_image_t:s0:c261,c401</imagelabel>
>   </seclabel>
> </domain>
>
>
>
> _______________________________________________
> vfio-users mailing list
> vfio-users at redhat.com
> https://www.redhat.com/mailman/listinfo/vfio-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20160211/00649490/attachment.htm>


More information about the vfio-users mailing list