On 15/11/2016 16:44, Michael S. Tsirkin wrote: > True. We could drop it from non-data plane, it's just that we never had > a reason to. vhost in kernel does not set ISR in MSI mode, either.
Yeah, I suspected that. But dropping it from non-dataplane would break Windows hibernation and crashdump, just like it did for Alex. > What we have in spec is: > > The device MUST set the Device Configuration Interrupt bit in ISR status > before sending a device configu- > ration change notification to the driver. > If MSI-X capability is disabled, the device MUST set the Queue Interrupt > bit in ISR status before sending a > virtqueue notification to the driver. > If MSI-X capability is disabled, the device MUST set the Interrupt > Status bit in the PCI Status register in the > PCI Configuration Header of the device to the logical OR of all bits in > ISR status of the device. The device > then asserts/deasserts INT#x interrupts unless masked according to > standard PCI rules [PCI]. > The device MUST reset ISR status to 0 on driver read. > > > > > If MSI-X capability is enabled, the driver SHOULD NOT access ISR status > upon detecting a Queue Interrupt. > > > > It can be clearer, but IMHO it's reasonably clear that devices > do not have to set this bit in MSI mode. Yes, it is. We can just document it in the release notes, but then the fix is not particularly intrusive. Paolo