From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiao Wang Subject: [PATCH v3 0/2] net/virtio: support GUEST ANNOUNCE Date: Wed, 3 Jan 2018 23:41:38 -0800 Message-ID: <1515051700-117262-1-git-send-email-xiao.w.wang@intel.com> References: <1512396128-119985-3-git-send-email-xiao.w.wang@intel.com> Cc: dev@dpdk.org, yliu@fridaylinux.org, stephen@networkplumber.org, Xiao Wang To: tiwei.bie@intel.com Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 4650316E for ; Thu, 4 Jan 2018 00:06:13 +0100 (CET) In-Reply-To: <1512396128-119985-3-git-send-email-xiao.w.wang@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" When live migration is finished, the backup VM needs to proactively announce its new location. DPDK vhost has implemented VHOST_USER_PROTOCOL_F_RARP to generate a RARP packet to switch in dequeue path. Another method is to let the guest proactively send out RARP packet using VIRTIO_NET_F_GUEST_ANNOUNCE feature. This patch set enables this feature in virtio pmd, to support VM running virtio pmd be migrated without vhost supporting RARP generation. v3: - Remove Tx function code duplication, use a special pointer for rarp injection. - Rename function generate_rarp to virtio_notify_peers, replace 'virtnet_' with 'virtio_'. - Add comment for state_lock. - Typo fix and comment improvement. v2: - Use spaces instead of tabs between the code and comments. - Remove unnecessary parentheses. - Use rte_pktmbuf_mtod directly to get eth_hdr addr. - Fix virtio_dev_pause return value check. Xiao Wang (2): net/virtio: make control queue thread-safe net/virtio: support GUEST ANNOUNCE drivers/net/virtio/virtio_ethdev.c | 145 +++++++++++++++++++++++++++++++- drivers/net/virtio/virtio_ethdev.h | 1 + drivers/net/virtio/virtio_pci.h | 7 ++ drivers/net/virtio/virtio_rxtx.c | 3 +- drivers/net/virtio/virtio_rxtx.h | 1 + drivers/net/virtio/virtio_rxtx_simple.c | 2 +- drivers/net/virtio/virtqueue.h | 11 +++ 7 files changed, 165 insertions(+), 5 deletions(-) -- 1.8.3.1