segfault upon reboot
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
[ 31.167946] VFIO - User Level meta-driver version: 0.3
[ 34.969182] kvm: zapping shadow pages for mmio generation wraparound
[ 43.095077] vfio-pci 0000:1a:00.0: irq 50 for MSI/MSI-X
[166493.891331] perf interrupt took too long (2506 > 2500), lowering kernel.
[315765.858431] qemu-kvm[1385]: segfault at 0 ip (null) sp 00007ffe5430db18 error 14
[315782.002077] vfio-pci 0000:1a:00.0: transaction is not cleared; proceeding with reset anyway
[315782.910854] mptsas 0000:1a:00.0: Refused to change power state, currently in D3
[315782.911236] mptbase: ioc1: Initiating bringup
[315782.911238] mptbase: ioc1: WARNING - Unexpected doorbell active!
[315842.957613] mptbase: ioc1: ERROR - Failed to come READY after reset! IocState=f0000000
[315842.957670] mptbase: ioc1: WARNING - ResetHistory bit failed to clear!
[315842.957675] mptbase: ioc1: ERROR - Diagnostic reset FAILED! (ffffffffh)
[315842.957717] mptbase: ioc1: WARNING - NOT READY WARNING!
[315842.957720] mptbase: ioc1: ERROR - didn't initialize properly! (-1)
[315842.957890] mptsas: probe of 0000:1a:00.0 failed with error -1
The qemu-kvm segfault happens when I issue a reboot on the Windows VM. The card I have is:
1a:00.0 SCSI storage controller: LSI Logic / Symbios Logic SAS1068E PCI-Express Fusion-MPT SAS (rev ff)
I have two of these cards (bought with many years difference), exact same model, and they fail the same way. I'm using PCI passthrough on this card for access to the tape drive.
This is very easy to reproduce, so feel free to let me know what to try.
Kernel 3.10.0-
qemu-kvm-
Reporting it here because of the segfault, but I guess I might have to open a bug report with mptbase as well?
Running the debuginfo qemu-kvm rpm and attaching with gdb might be interesting to get a backtrace from that segfault. Otherwise devices getting stuck in D3 often mean they didn't return from a reset correctly. Are we to assume that the VM died between the vfio-pci line and the mptbase line and the device was set to managed='yes' and therefore libvirt returned the device to the host driver? Please document your VM config and provide lspci -vvv info for the assigned device.