47 lines
1.7 KiB
Diff
47 lines
1.7 KiB
Diff
From be1927c97e564346cbd409cb17fe611df74b84e5 Mon Sep 17 00:00:00 2001
|
|
From: Jan Kiszka <jan.kiszka@siemens.com>
|
|
Date: Sun, 2 Jun 2019 13:42:13 +0200
|
|
Subject: [PATCH] ioapic: kvm: Skip route updates for masked pins
|
|
|
|
Masked entries will not generate interrupt messages, thus do no need to
|
|
be routed by KVM. This is a cosmetic cleanup, just avoiding warnings of
|
|
the kind
|
|
|
|
qemu-system-x86_64: vtd_irte_get: detected non-present IRTE (index=0, high=0xff00, low=0x100)
|
|
|
|
if the masked entry happens to reference a non-present IRTE.
|
|
|
|
Cc: qemu-stable@nongnu.org
|
|
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
|
|
Message-Id: <a84b7e03-f9a8-b577-be27-4d93d1caa1c9@siemens.com>
|
|
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
|
|
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
|
|
Reviewed-by: Peter Xu <peterx@redhat.com>
|
|
(cherry-picked from commit be1927c97e564346cbd409cb17fe611df74b84e5)
|
|
---
|
|
hw/intc/ioapic.c | 8 +++++---
|
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/hw/intc/ioapic.c b/hw/intc/ioapic.c
|
|
index c408749876..e99c37cceb 100644
|
|
--- a/hw/intc/ioapic.c
|
|
+++ b/hw/intc/ioapic.c
|
|
@@ -197,9 +197,11 @@ static void ioapic_update_kvm_routes(IOAPICCommonState *s)
|
|
MSIMessage msg;
|
|
struct ioapic_entry_info info;
|
|
ioapic_entry_parse(s->ioredtbl[i], &info);
|
|
- msg.address = info.addr;
|
|
- msg.data = info.data;
|
|
- kvm_irqchip_update_msi_route(kvm_state, i, msg, NULL);
|
|
+ if (!info.masked) {
|
|
+ msg.address = info.addr;
|
|
+ msg.data = info.data;
|
|
+ kvm_irqchip_update_msi_route(kvm_state, i, msg, NULL);
|
|
+ }
|
|
}
|
|
kvm_irqchip_commit_routes(kvm_state);
|
|
}
|
|
--
|
|
2.19.1
|
|
|