From patchwork Fri Oct 23 07:14:30 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Suanming Mou X-Patchwork-Id: 81868 Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5B36EA04DE; Fri, 23 Oct 2020 09:15:08 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3A3BB72DB; Fri, 23 Oct 2020 09:15:07 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id 4328A6CCB for ; Fri, 23 Oct 2020 09:15:04 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from suanmingm@nvidia.com) with SMTP; 23 Oct 2020 10:15:03 +0300 Received: from nvidia.com (mtbc-r640-04.mtbc.labs.mlnx [10.75.70.9]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 09N7F2LJ026736 for ; Fri, 23 Oct 2020 10:15:03 +0300 From: Suanming Mou To: Cc: dev@dpdk.org Date: Fri, 23 Oct 2020 15:14:30 +0800 Message-Id: <1603437295-119083-1-git-send-email-suanmingm@nvidia.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1601984948-313027-1-git-send-email-suanmingm@nvidia.com> References: <1601984948-313027-1-git-send-email-suanmingm@nvidia.com> Subject: [dpdk-dev] [PATCH v2 00/25] *net/mlx5: support multiple-thread flow operations X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" This patch set contains multiple-thread flow operations support for the flow objects. The new added PMD features after RC1 MT support is not done yet. The sh lock removing patch will be moved to the next series. Suanming Mou (11): net/mlx5: use thread safe index pool for flow objects net/mlx5: make meter action thread safe net/mlx5: make VLAN network interface thread safe net/mlx5: create global jump action net/mlx5: create global default miss action net/mlx5: create global drop action net/mlx5: fix redundant Direct Verbs resources allocate net/mlx5: remove unused mreg copy code net/mlx5: make header reformat action thread safe net/mlx5: remove unused hash list operations net/mlx5: make Rx queue thread safe Xueming Li (14): net/mlx5: use thread specific flow workspace net/mlx5: reuse flow Id as hairpin Id net/mlx5: indexed pool supports zero size entry net/mlx5: use indexed pool for RSS flow ID net/mlx5: make rte flow list thread safe net/mlx5: support concurrent access for hash list net/mlx5: make flow table cache thread safe net/mlx5: make flow tag list thread safe net/mlx5: make flow modify action list thread safe net/mlx5: make metadata copy flow list thread safe net/mlx5: introduce thread safe linked list cache net/mlx5: make matcher list thread safe net/mlx5: make port ID action cache thread safe net/mlx5: make push VLAN action cache thread safe --- v2: - fix review comments. - remove unused mreg copy code. - drop the sh lock removing patch as new feature still not fully updated. --- drivers/common/mlx5/linux/mlx5_nl.h | 1 + drivers/net/mlx5/linux/mlx5_os.c | 100 ++- drivers/net/mlx5/linux/mlx5_vlan_os.c | 5 + drivers/net/mlx5/mlx5.c | 266 +------ drivers/net/mlx5/mlx5.h | 63 +- drivers/net/mlx5/mlx5_flow.c | 590 ++++++-------- drivers/net/mlx5/mlx5_flow.h | 124 ++- drivers/net/mlx5/mlx5_flow_dv.c | 1393 +++++++++++++++------------------ drivers/net/mlx5/mlx5_flow_meter.c | 72 +- drivers/net/mlx5/mlx5_flow_verbs.c | 84 +- drivers/net/mlx5/mlx5_rxq.c | 235 +++--- drivers/net/mlx5/mlx5_rxtx.h | 20 +- drivers/net/mlx5/mlx5_utils.c | 345 ++++++-- drivers/net/mlx5/mlx5_utils.h | 320 ++++++-- 14 files changed, 1856 insertions(+), 1762 deletions(-)