aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael S. Tsirkin <mst@redhat.com>2009-07-05 15:58:44 +0300
committerAnthony Liguori <aliguori@us.ibm.com>2009-07-10 13:44:30 -0500
commit4bfd1712d787db62586e620cb84d35f6afa5b772 (patch)
tree869c05f9ee1578c29b85d7311bde924dcb20320b
parent3f6a3ee51ebd1e86c48ff1216f5caf9785913ab5 (diff)
downloadqemu-4bfd1712d787db62586e620cb84d35f6afa5b772.zip
qemu-4bfd1712d787db62586e620cb84d35f6afa5b772.tar.gz
qemu-4bfd1712d787db62586e620cb84d35f6afa5b772.tar.bz2
qemu/msi: clean used vectors state on load
Clean up msix vector usage state on load. Since guest might have control over it through the device, the device will have to load this state from file. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
-rw-r--r--hw/msix.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/hw/msix.c b/hw/msix.c
index e130857..47e0140 100644
--- a/hw/msix.c
+++ b/hw/msix.c
@@ -302,6 +302,7 @@ void msix_load(PCIDevice *dev, QEMUFile *f)
return;
}
+ msix_free_irq_entries(dev);
qemu_get_buffer(f, dev->msix_table_page, n * MSIX_ENTRY_SIZE);
qemu_get_buffer(f, dev->msix_table_page + MSIX_PAGE_PENDING, (n + 7) / 8);
}