diff --git a/vm-virtio/src/transport/pci_device.rs b/vm-virtio/src/transport/pci_device.rs index a5c350979..6f6e43e78 100755 --- a/vm-virtio/src/transport/pci_device.rs +++ b/vm-virtio/src/transport/pci_device.rs @@ -423,6 +423,12 @@ impl PciDevice for VirtioPciDevice { let config = &mut msix_config_clone.lock().unwrap(); let entry = &config.table_entries[vector as usize]; + // If MSI-X interrupts are not enabled for this device, then simply + // ignore the interrupt. + if !config.enabled() { + return Ok(()); + } + // In case the vector control register associated with the entry // has its first bit set, this means the vector is masked and the // device should not inject the interrupt.