public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCHv2] qemu-kvm: routing table update thinko fix
@ 2009-07-23  8:52 Michael S. Tsirkin
  2009-07-23 20:01 ` Marcelo Tosatti
  0 siblings, 1 reply; 2+ messages in thread
From: Michael S. Tsirkin @ 2009-07-23  8:52 UTC (permalink / raw)
  To: kvm, avi, gleb, mtosatti

When updating irq routing entries, we should memcpy the new entry
over the old one. Current code gets it wrong, and only works because
it's uncommon for guests to change tables.

Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
---

Changes since v1:
  updated irqchip case as well

 qemu-kvm.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/qemu-kvm.c b/qemu-kvm.c
index 60e5eac..b4de9c6 100644
--- a/qemu-kvm.c
+++ b/qemu-kvm.c
@@ -1544,7 +1544,7 @@ int kvm_update_routing_entry(kvm_context_t kvm,
         case KVM_IRQ_ROUTING_IRQCHIP:
             if (e->u.irqchip.irqchip == entry->u.irqchip.irqchip &&
                 e->u.irqchip.pin == entry->u.irqchip.pin) {
-                memcpy(&e->u.irqchip, &entry->u.irqchip, sizeof e->u.irqchip);
+                memcpy(&e->u.irqchip, &newentry->u.irqchip, sizeof e->u.irqchip);
                 return 0;
             }
             break;
@@ -1552,7 +1552,7 @@ int kvm_update_routing_entry(kvm_context_t kvm,
             if (e->u.msi.address_lo == entry->u.msi.address_lo &&
                 e->u.msi.address_hi == entry->u.msi.address_hi &&
                 e->u.msi.data == entry->u.msi.data) {
-                memcpy(&e->u.msi, &entry->u.msi, sizeof e->u.msi);
+                memcpy(&e->u.msi, &newentry->u.msi, sizeof e->u.msi);
                 return 0;
             }
             break;
-- 
1.6.2.5

^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-07-23 20:02 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-23  8:52 [PATCHv2] qemu-kvm: routing table update thinko fix Michael S. Tsirkin
2009-07-23 20:01 ` Marcelo Tosatti

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox