[vfio-users] Problems passing through Creative X-Fi PCIe sound card

Michael Slade mslade at epic-code.com.au
Thu Feb 13 02:41:44 UTC 2020


Hi everyone,

I'll attempt to start with enough info to describe my situation without 
pasting a complete `lspci -vvvxxx` output etc.

My special sound card doesn't want to work when passed through to a guest.

The card is a Creative "X-Fi Titanium Fatal1ty Pro" (1102:000b), and the 
mobo is an Asus "TUF Gaming X570 Plus (Wi-Fi)".

I have already had much success passing through multiple other PCIe 
devices, including the primary GPU with its HDMI audio, 2 USB 
controllers and a SATA controller, so I think I have the general process 
down.  The VM's base is pc-i440fx-3.1, running under libvirt.

So when I attempt to use the card in the guest, within the first few 
minutes of running the host goes:

Feb 13 11:48:01 mickpc-bullseye kernel: [13186.228134] irq 98: nobody 
cared (try booting with the "irqpoll" option)
[snip]
Feb 13 11:48:01 mickpc-bullseye kernel: [13186.228199] handlers:
Feb 13 11:48:01 mickpc-bullseye kernel: [13186.228202] 
[<000000009b052715>] vfio_intx_handler [vfio_pci]
Feb 13 11:48:01 mickpc-bullseye kernel: [13186.228203] Disabling IRQ #98

Then sound stops working for *some* clients on the guest (including 
pulseaudio).  The sound goes choppy, as if it's playing each 0.2s of 
audio 4-5 times.

I think i tried irqpoll a while back with no luck (From my understanding 
of what it does, it won't help here anyway)

I have tried multiple kernel versions on both host and guest (haven't 
tried 5.5 yet though).

/proc/interrupts on the host says:
   98:          0          0          0          0 0          0     
400000          0  IR-IO-APIC    7-fasteoi vfio-intx(0000:04:00.0)

And on the guest:
  11:          0       7110          0          0 0          0          
0          0   IO-APIC  11-fasteoi virtio3, uhci_hcd:usb1, snd_ctxfi

This is the only device whose interrupt is MSI on the host and not on 
the guest, and also the only device which is sharing interrupts with 
other devices on the guest.

Can anyone could shed some light on what is actually happening here and 
how it could be fixed?

FYI, the PCI config dump of the card on the host, in case it helps:

04:00.0 Audio device: Creative Labs EMU20k2 [Sound Blaster X-Fi Titanium 
Series] (rev 03)
00: 02 11 0b 00 06 01 10 00 03 00 03 04 10 00 00 00
10: 04 00 20 f4 00 00 00 00 04 00 00 f4 00 00 00 00
20: 04 00 00 f0 00 00 00 00 00 00 00 00 02 11 43 00
30: 00 00 00 00 40 00 00 00 00 00 00 00 0f 01 00 00
40: 01 48 03 00 00 00 00 00 05 58 80 00 00 00 00 00
50: 00 00 00 00 00 00 00 00 10 00 02 00 00 80 00 00
60: 10 28 00 00 11 0c 00 00 00 00 11 00 00 00 00 00
70: 00 00 00 00 00 00 00 00 00 00 00 00 0f 00 00 00
80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
d0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
e0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
f0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00





More information about the vfio-users mailing list