aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKeir Fraser <keirf@google.com>2023-09-12 15:16:21 +0000
committerWill Deacon <will@kernel.org>2023-09-18 11:50:27 +0100
commit353fa0d89e295ecf6717586533b81d5229cb2f4b (patch)
tree444e2238bb5def3a2780744de68631cc95c835ba
parentc7b7a542cdcd8ebe55cc3e7b49cabba15725c2ca (diff)
downloadkvmtool-353fa0d89e295ecf6717586533b81d5229cb2f4b.tar.gz
virtio/pci: Level-trigger the legacy IRQ line in all cases
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> Link: https://lore.kernel.org/r/20230912151623.2558794-2-keirf@google.com Signed-off-by: Will Deacon <will@kernel.org>
-rw-r--r--virtio/pci.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/virtio/pci.c b/virtio/pci.c
index 701f4566..7a206be0 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;