[vfio-users] Guest NVRAM trashed by IOMMU page fault.

Blank Field ihatethisfield at gmail.com
Sat Oct 10 12:03:12 UTC 2015


Hello everybody!

Well, as you might know, i am a dumb fool who succeeded in ruining his own
system many times but recovered it everytime.

So, yesterday was just another day of ruining the setup.
I've had a motherboard's embedded sound card passed through... via legacy
kvm pci-assign driver.
And a week or so ago it started to throw a lot of IRQs to the point i got a
crash with a kernel message "IRQ16 was not handled, nobody cared" or
something like this.
Anyway, it went nuts, and yesterday my VM just froze completely.
Afterwards, i was unable to boot it no matter which devices are plugged in.
"Something got overwrited", i thought, and started to examine dmesg,
rebooting the host, and even reflashed my motherboard ROM.

The solution was simple. The guest
NVRAM(/var/lib/libvirt/nvram/VMNAME_VARS.fd) got damaged badly resulting in
DoS.

And being a dumb fool, i didn't copy the damaged file to examine it, but i
suppose some audio card related data got written there. I don't know why a
soundcard would need to write something into the system if there's no sound
input connected...

The morale: do NOT use pci-assign even for pci device assignment. It
doesn't work with DMA(there was a lot of IOMMU page faults in dmesg) and it
managed to mess up the interrupts.

That means i can't have my motherboard's soundcard passed through into the
vm at all - it shares it's IOMMU group with other system devices. The host
soundcard is too old for windowns and there is no drivers ever been made
for NT systems, just 9x. Seems like i'll need to find a newer one.
Well, this mess worked like a charm for.. half a year?

That's all, folks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20151010/c4986e13/attachment.htm>


More information about the vfio-users mailing list