[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 12/11] msix: Trigger vector mask update check after
From: |
Jan Kiszka |
Subject: |
[Qemu-devel] [PATCH 12/11] msix: Trigger vector mask update check after vmload |
Date: |
Tue, 15 May 2012 10:31:53 -0300 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 |
In case we load a PCI device with active vectors, we have to process
them and invoke potential notifiers.
Signed-off-by: Jan Kiszka <address@hidden>
---
This amends the QEMU series but should be equally relevant as bug fix
for qemu-kvm.
hw/msix.c | 5 +++++
1 files changed, 5 insertions(+), 0 deletions(-)
diff --git a/hw/msix.c b/hw/msix.c
index 2114b99..59c7a83 100644
--- a/hw/msix.c
+++ b/hw/msix.c
@@ -351,6 +351,7 @@ void msix_save(PCIDevice *dev, QEMUFile *f)
void msix_load(PCIDevice *dev, QEMUFile *f)
{
unsigned n = dev->msix_entries_nr;
+ unsigned int vector;
if (!(dev->cap_present & QEMU_PCI_CAP_MSIX)) {
return;
@@ -360,6 +361,10 @@ void msix_load(PCIDevice *dev, QEMUFile *f)
qemu_get_buffer(f, dev->msix_table_page, n * PCI_MSIX_ENTRY_SIZE);
qemu_get_buffer(f, dev->msix_table_page + MSIX_PAGE_PENDING, (n + 7) / 8);
msix_update_function_masked(dev);
+
+ for (vector = 0; vector < n; vector++) {
+ msix_handle_mask_update(dev, vector, true);
+ }
}
/* Does device support MSI-X? */
--
1.7.3.4
- [Qemu-devel] [RFC][PATCH 00/11] uq/master: irqfd-based interrupt injection for virtio/vhost, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 01/11] msix: Factor out msix_get_message, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 02/11] msix: Invoke msix_handle_mask_update on msix_mask_all, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 03/11] msix: Introduce vector notifiers, Jan Kiszka, 2012/05/14
- [Qemu-devel] [PATCH 12/11] msix: Trigger vector mask update check after vmload,
Jan Kiszka <=
- [Qemu-devel] [RFC][PATCH 04/11] kvm: Rename kvm_irqchip_add_route to kvm_irqchip_add_irq_route, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 06/11] kvm: Publicize kvm_release_gsi as kvm_irqchip_release_virq, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 05/11] kvm: Introduce kvm_irqchip_add_msi_route, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 07/11] kvm: Make kvm_irqchip_commit_routes an internal service, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 08/11] kvm: Introduce kvm_irqchip_add/remove_irqfd, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 09/11] kvm: Enable use of kvm_irqchip_in_kernel in hwlib code, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 10/11] msix: Add msix_nr_vectors_allocated, Jan Kiszka, 2012/05/14
- [Qemu-devel] [RFC][PATCH 11/11] virtio/vhost: Add support for KVM in-kernel MSI injection, Jan Kiszka, 2012/05/14