From patchwork Fri Aug 7 10:56:44 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: yang_y_yi X-Patchwork-Id: 1342215 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=163.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=163.com header.i=@163.com header.a=rsa-sha256 header.s=s110527 header.b=VV3GkoV4; dkim-atps=neutral Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4BNMl74srLz9sTF for ; Fri, 7 Aug 2020 20:57:39 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 7015588993; Fri, 7 Aug 2020 10:57:37 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lzkG9rSY-kTk; Fri, 7 Aug 2020 10:57:35 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by hemlock.osuosl.org (Postfix) with ESMTP id 4B87A88912; Fri, 7 Aug 2020 10:57:35 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 24775C0053; Fri, 7 Aug 2020 10:57:35 +0000 (UTC) X-Original-To: ovs-dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 30E24C004C for ; Fri, 7 Aug 2020 10:57:34 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 2DB4888764 for ; Fri, 7 Aug 2020 10:57:34 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id C-Fj6uYfZVPw for ; Fri, 7 Aug 2020 10:57:32 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from mail-m971.mail.163.com (mail-m971.mail.163.com [123.126.97.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 34AE588760 for ; Fri, 7 Aug 2020 10:57:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=163.com; s=s110527; h=From:Subject:Date:Message-Id:MIME-Version; bh=dA6Uq IMnJ0WzAbG5EJgiSuKWgGGzc7jwI54HZiXLfp4=; b=VV3GkoV4+ci7KorVYqx8P u4ObIQWDM0ALbmDmcbjGQUw87Prpz7fSATTx0DB5l+BZ3mxNEfAH6Z7BntgoavbA kh1WBLLpBV4F0EJoOdnULO4F8JYoO/AfGbgaxWxR2qhet5/nwgup33B7qSLddnVS Yok7w9O/W0bqyM0yGMLnCU= Received: from yangyi0100.home.langchao.com (unknown [111.207.123.58]) by smtp1 (Coremail) with SMTP id GdxpCgBXfVpwMy1fICWdCA--.20S2; Fri, 07 Aug 2020 18:57:04 +0800 (CST) From: yang_y_yi@163.com To: ovs-dev@openvswitch.org Date: Fri, 7 Aug 2020 18:56:44 +0800 Message-Id: <20200807105648.94860-1-yang_y_yi@163.com> X-Mailer: git-send-email 2.19.2.windows.1 MIME-Version: 1.0 X-CM-TRANSID: GdxpCgBXfVpwMy1fICWdCA--.20S2 X-Coremail-Antispam: 1Uf129KBjvJXoWxJrW5XF4DWr17AFyfGryDWrg_yoW8Jw1kpa 95Cr1YqFZIqrWfWw4fZ34Iqr1YyFZ5AFyDJw4xt342va9IqF1jqr4rW398tFyfX34fua4S qr1UAFyrWw1rJFDanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x0zREdgNUUUUU= X-Originating-IP: [111.207.123.58] X-CM-SenderInfo: 51dqwsp1b1xqqrwthudrp/xtbBEAF5i1UMTE6UPAAAsQ Cc: yang_y_yi@163.com, fbl@sysclose.org Subject: [ovs-dev] [PATCH V3 0/4] userspace: enable VXLAN TSO, GSO and GRO X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" From: Yi Yang Many NICs can support VXLAN TSO, this can improve VM-to-VM TCP performance, but for UDP, most of NICs can offload UFO, so GSO is very necessary for UDP when userspace TSO is enabled, GSO also can do VXLAN TSO if NIC can't support it. GRO is necessary if TSO and UFO are enabled, it can avoid plenty of overhead. This patch series fix all the aforementioned issues. By the way, GSO and GRO needs DPDK to apply two patches I have sent out to dev@dpdk.org. [1] https://patches.dpdk.org/patch/72508/ [2] https://patches.dpdk.org/patch/72509/ In addtion, GSO has mbuf free issue, this is DPDK defect, a fix series have been posted to dev@dpdk.org. [3] https://patches.dpdk.org/patch/75036/ [4] https://patches.dpdk.org/patch/75035/ [5] https://patches.dpdk.org/patch/75037/ Yi Yang (4): Enable VXLAN TSO for DPDK datapath Add GSO support for DPDK data path Add VXLAN TCP and UDP GRO support for DPDK data path Update Documentation/topics/userspace-tso.rst Documentation/topics/userspace-tso.rst | 13 +- lib/dp-packet.h | 134 +++++- lib/netdev-dpdk.c | 759 +++++++++++++++++++++++++++++++-- lib/netdev-linux.c | 149 ++++++- lib/netdev-provider.h | 1 + lib/netdev.c | 116 ++++- 6 files changed, 1109 insertions(+), 63 deletions(-)