qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] virtio-pci: Clear IRQ at reset
@ 2015-03-12  6:40 Fam Zheng
  2015-03-12  7:22 ` Michael S. Tsirkin
  2015-03-12  9:41 ` Michael S. Tsirkin
  0 siblings, 2 replies; 15+ messages in thread
From: Fam Zheng @ 2015-03-12  6:40 UTC (permalink / raw)
  To: qemu-devel; +Cc: Michael S. Tsirkin

Currently we could leave PCI IRQ asserted even after reset, it is safer
to clear it.

In the case that a buggy driver has disabled MSI-X unintentially, we may
have already injected IRQ in previous virtio_pci_notify, which will not
be cleared by guest because it doesn't expect it (i.e. no irq handler).
However the driver may eventually notice the unresponsiveness and reset
the device, at that point, clearing the irq is meaningful.

Signed-off-by: Fam Zheng <famz@redhat.com>
---
 hw/virtio/virtio-pci.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index e7baf7b..2600f1e 100644
--- a/hw/virtio/virtio-pci.c
+++ b/hw/virtio/virtio-pci.c
@@ -988,6 +988,7 @@ static void virtio_pci_reset(DeviceState *qdev)
     virtio_pci_stop_ioeventfd(proxy);
     virtio_bus_reset(bus);
     msix_unuse_all_vectors(&proxy->pci_dev);
+    pci_irq_deassert(&proxy->pci_dev);
 }
 
 static Property virtio_pci_properties[] = {
-- 
1.9.3

^ permalink raw reply related	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2015-03-16  5:10 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-03-12  6:40 [Qemu-devel] [PATCH] virtio-pci: Clear IRQ at reset Fam Zheng
2015-03-12  7:22 ` Michael S. Tsirkin
2015-03-12  7:58   ` Fam Zheng
2015-03-12  9:41 ` Michael S. Tsirkin
2015-03-12 10:00   ` Fam Zheng
2015-03-12 10:06     ` Michael S. Tsirkin
2015-03-12 10:16     ` Michael S. Tsirkin
2015-03-12 10:21       ` Peter Maydell
2015-03-12 10:57         ` Michael S. Tsirkin
2015-03-12 11:04           ` Peter Maydell
2015-03-12 11:15             ` Michael S. Tsirkin
2015-03-13  6:07               ` Fam Zheng
2015-03-13  6:28                 ` Fam Zheng
2015-03-16  5:09                   ` Michael S. Tsirkin
2015-03-13 14:19                 ` Michael S. Tsirkin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).