From 5b5f1330da2d7e5b5cbde8c60738774b2bd8692f Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Thu, 17 May 2012 10:32:30 -0300 Subject: [PATCH] msix: Invoke msix_handle_mask_update on msix_mask_all In preparation of firing vector notifiers on mask changes, call msix_handle_mask_update also from msix_mask_all. So far, this will have no real effect. Signed-off-by: Jan Kiszka Signed-off-by: Avi Kivity --- hw/msix.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/hw/msix.c b/hw/msix.c index 31974657d3..e1a7d92fea 100644 --- a/hw/msix.c +++ b/hw/msix.c @@ -231,10 +231,14 @@ static void msix_mmio_setup(PCIDevice *d, MemoryRegion *bar) static void msix_mask_all(struct PCIDevice *dev, unsigned nentries) { int vector; + for (vector = 0; vector < nentries; ++vector) { unsigned offset = vector * PCI_MSIX_ENTRY_SIZE + PCI_MSIX_ENTRY_VECTOR_CTRL; + bool was_masked = msix_is_masked(dev, vector); + dev->msix_table_page[offset] |= PCI_MSIX_ENTRY_CTRL_MASKBIT; + msix_handle_mask_update(dev, vector, was_masked); } }