diff mbox series

[1/3] virtio/pci: Level-trigger the legacy IRQ line in all cases

Message ID 20230912151623.2558794-2-keirf@google.com (mailing list archive)
State New, archived
Headers show
Series Fixes for virtio PCI interrupt handling | expand

Commit Message

Keir Fraser Sept. 12, 2023, 3:16 p.m. UTC
The PCI legacy IRQ line is level triggered, but is treated as
edge triggered via kvm__irq_trigger() for signalling of config
changes.

Fix this by using kvm__irq_level(), as for queue signalling.

Signed-off-by: Keir Fraser <keirf@google.com>
---
 virtio/pci.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/virtio/pci.c b/virtio/pci.c
index 701f456..7a206be 100644
--- a/virtio/pci.c
+++ b/virtio/pci.c
@@ -264,7 +264,7 @@  int virtio_pci__signal_config(struct kvm *kvm, struct virtio_device *vdev)
 			kvm__irq_trigger(kvm, vpci->config_gsi);
 	} else {
 		vpci->isr = VIRTIO_PCI_ISR_CONFIG;
-		kvm__irq_trigger(kvm, vpci->legacy_irq_line);
+		kvm__irq_line(kvm, vpci->legacy_irq_line, VIRTIO_IRQ_HIGH);
 	}
 
 	return 0;