From patchwork Thu Oct 22 16:43:43 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Mark McLoughlin X-Patchwork-Id: 36735 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by ozlabs.org (Postfix) with ESMTPS id 66A16B7BAD for ; Fri, 23 Oct 2009 05:22:02 +1100 (EST) Received: from localhost ([127.0.0.1]:53582 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N12IQ-0003JN-Mg for incoming@patchwork.ozlabs.org; Thu, 22 Oct 2009 14:21:58 -0400 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1N11gf-0000A7-Sj for qemu-devel@nongnu.org; Thu, 22 Oct 2009 13:42:58 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1N11gS-0008N4-Tz for qemu-devel@nongnu.org; Thu, 22 Oct 2009 13:42:49 -0400 Received: from [199.232.76.173] (port=53800 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1N11gQ-0008Mq-6i for qemu-devel@nongnu.org; Thu, 22 Oct 2009 13:42:42 -0400 Received: from mx1.redhat.com ([209.132.183.28]:21177) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1N11gP-0003kE-Lx for qemu-devel@nongnu.org; Thu, 22 Oct 2009 13:42:42 -0400 Received: from int-mx04.intmail.prod.int.phx2.redhat.com (int-mx04.intmail.prod.int.phx2.redhat.com [10.5.11.17]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id n9MGjiaj017094 for ; Thu, 22 Oct 2009 12:45:44 -0400 Received: from blaa.localdomain (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx04.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id n9MGjhDe017436; Thu, 22 Oct 2009 12:45:43 -0400 Received: by blaa.localdomain (Postfix, from userid 500) id A469A45B48; Thu, 22 Oct 2009 17:43:50 +0100 (IST) From: Mark McLoughlin To: qemu-devel@nongnu.org Date: Thu, 22 Oct 2009 17:43:43 +0100 Message-Id: <1256229830-28066-13-git-send-email-markmc@redhat.com> In-Reply-To: <1256229830-28066-1-git-send-email-markmc@redhat.com> References: <1256229830-28066-1-git-send-email-markmc@redhat.com> X-Scanned-By: MIMEDefang 2.67 on 10.5.11.17 X-detected-operating-system: by monty-python.gnu.org: Genre and OS details not recognized. Cc: Mark McLoughlin , Gleb Natapov Subject: [Qemu-devel] [PATCH 12/19] net: use qemu_send_packet_raw() in qemu_announce_self() X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org From: Gleb Natapov 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 Signed-off-by: Mark McLoughlin --- 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);