qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 12/19] net: use qemu_send_packet_raw() in qemu_annou


From: Mark McLoughlin
Subject: [Qemu-devel] [PATCH 12/19] net: use qemu_send_packet_raw() in qemu_announce_self()
Date: Wed, 21 Oct 2009 12:27:51 +0100

From: Gleb Natapov <address@hidden>

Use qemu_send_packet_raw to send gratuitous arp. This will ensure that
vnet header is handled properly.

Also, avoid sending the gratuitous packet to the guest. There doesn't
appear to be any reason for doing that and the code will currently just
crash if the NIC is not associated with a vlan.

Signed-off-by: Gleb Natapov <address@hidden>
Signed-off-by: Mark McLoughlin <address@hidden>
---
 savevm.c |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)

diff --git a/savevm.c b/savevm.c
index 99aa15a..ac1ef42 100644
--- a/savevm.c
+++ b/savevm.c
@@ -114,8 +114,6 @@ static int announce_self_create(uint8_t *buf,
 static void qemu_announce_self_once(void *opaque)
 {
     int i, len;
-    VLANState *vlan;
-    VLANClientState *vc;
     uint8_t buf[256];
     static int count = SELF_ANNOUNCE_ROUNDS;
     QEMUTimer *timer = *(QEMUTimer **)opaque;
@@ -124,10 +122,7 @@ static void qemu_announce_self_once(void *opaque)
         if (!nd_table[i].used)
             continue;
         len = announce_self_create(buf, nd_table[i].macaddr);
-        vlan = nd_table[i].vlan;
-        QTAILQ_FOREACH(vc, &vlan->clients, next) {
-            vc->receive(vc, buf, len);
-        }
+        qemu_send_packet_raw(nd_table[i].vc, buf, len);
     }
     if (count--) {
            qemu_mod_timer(timer, qemu_get_clock(rt_clock) + 100);
-- 
1.6.2.5





reply via email to

[Prev in Thread] Current Thread [Next in Thread]