From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57544) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WkVUK-00046R-Rm for qemu-devel@nongnu.org; Wed, 14 May 2014 05:28:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WkVUG-0000cm-ID for qemu-devel@nongnu.org; Wed, 14 May 2014 05:28:36 -0400 Received: from mx1.redhat.com ([209.132.183.28]:40828) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WkVUG-0000cf-AJ for qemu-devel@nongnu.org; Wed, 14 May 2014 05:28:32 -0400 Message-ID: <53733740.2040504@redhat.com> Date: Wed, 14 May 2014 17:28:32 +0800 From: Jason Wang MIME-Version: 1.0 References: <1397184887-8988-1-git-send-email-jasowang@redhat.com> <20140512072226.GA12781@redhat.com> In-Reply-To: <20140512072226.GA12781@redhat.com> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH RFC V2] virtio-net: announce self by guest List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: "Michael S. Tsirkin" Cc: Liuyongan , Amos Kong , qemu-devel@nongnu.org, aliguori@amazon.com On 05/12/2014 03:22 PM, Michael S. Tsirkin wrote: > On Fri, Apr 11, 2014 at 10:54:47AM +0800, Jason Wang wrote: >> > It's hard to track all mac addresses and their configurations (e.g >> > vlan or ipv6) in qemu. Without those informations, it's impossible to >> > build proper garp packet after migration. The only possible solution >> > to this is let guest (who knew all configurations) to do this. >> > >> > So, this patch introduces a new readonly config status bit of virtio-net, >> > VIRTIO_NET_S_ANNOUNCE which is used to notify guest to announce >> > presence of its link through config update interrupt.When guest has >> > done the announcement, it should ack the notification through >> > VIRTIO_NET_CTRL_ANNOUNCE_ACK cmd. This feature is negotiated by a new >> > feature bit VIRTIO_NET_F_ANNOUNCE (which has already been supported by >> > Linux guest). >> > >> > During load, a counter of announcing rounds were set so that the after >> > the vm is running it can trigger rounds of config interrupts to notify >> > the guest to build and send the correct garps. >> > >> > Reference: >> > RFC v1: https://lists.gnu.org/archive/html/qemu-devel/2014-03/msg02648.html >> > V7: https://lists.gnu.org/archive/html/qemu-devel/2013-03/msg01127.html >> > >> > Changes from RFC v1: >> > - clean VIRTIO_NET_S_ANNOUNCE bit during reset >> > - free announce timer during clean >> > - make announce work for non-vhost case >> > >> > Changes from V7: >> > - Instead of introducing a global method for each kind of nic, this >> > version limits the changes to virtio-net itself. >> > >> > Cc: Liuyongan >> > Cc: Amos Kong >> > Signed-off-by: Jason Wang > Looks good to me, but I think you should use > QEMU_CLOCK_VIRTUAL: let's not change VM state > when emulation is not running. > Sure, will post another version. Thanks