Message ID | e18973a31e2bfc2d37bcf94e7bcd0f630ea20481.1284528424.git.yamahata@valinux.co.jp |
---|---|
State | New |
Headers | show |
diff --git a/hw/msix.c b/hw/msix.c index 7ce63eb..b202ff7 100644 --- a/hw/msix.c +++ b/hw/msix.c @@ -158,6 +158,7 @@ void msix_write_config(PCIDevice *dev, uint32_t addr, { unsigned enable_pos = dev->msix_cap + MSIX_CONTROL_OFFSET; int vector; + int i; if (!range_covers_byte(addr, len, enable_pos)) { return; @@ -167,7 +168,9 @@ void msix_write_config(PCIDevice *dev, uint32_t addr, return; } - qemu_set_irq(dev->irq[0], 0); + for (i = 0; i < PCI_NUM_PINS; ++i) { + qemu_set_irq(dev->irq[i], 0); + } if (msix_function_masked(dev)) { return;
clear not only INTA, but all INTx when MSI-X is enabled. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> --- hw/msix.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)