Message ID | 20240925180532.3958656-1-akozyrev@nvidia.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id D0C6B45A2C; Wed, 25 Sep 2024 20:06:19 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5625C402AE; Wed, 25 Sep 2024 20:06:19 +0200 (CEST) Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2051.outbound.protection.outlook.com [40.107.93.51]) by mails.dpdk.org (Postfix) with ESMTP id 92D65400EF for <dev@dpdk.org>; Wed, 25 Sep 2024 20:06:18 +0200 (CEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=iLaiEvA0ZxeSAxPkhii+1zHUmWSiRbUpaipBe/pwbOuFIQTTvCzFCmkWMrPdPASaavr6ORE0j0Bb3kq3xZUhnCK5B9pjUeINjADYormvMbTxeA96ex2XHDgha8yysFQHCqHbTlEkcVM7ixW1/kLP62qoZMtwZ85bZ8njhHY2h4p4LT/HjOwMTgHLpQPzUjyMaZRSBLJKSbflnGylz4V5hZhExRT8bRvmV6LTJG021Ga3EjKJDuU7+HAm6ymXMdPABppORZPsoP83Ud72neVa1YmcqZSSm5mscCdMSKwZhQO+2WdiHuk14Oza70oFwoUhL3yEWO1p8vbfabvjZcn5KA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=JJwCZ35cioAPwRTF3gz1x3/7iYdTsQGbt77gpws+kpY=; b=Z7UcYgsR1g9PgY/LJBfgQIIFXHMDFWH5y3Osg1WcuvW5sBFV/QY88P21R+4WdfSDdM49Uqc6ydMJ6/vsX63lo0ASzlbzOnr7loXlMOSZ/jro73bnvs92cJRjhNAqn5SI6+ysQQ2Q1PGO6Of8a0x4xoNhtElZXU/ciL0ODQhW9UwnqZ6Y7ALW5LWmuAa0t/KTypNTeGePCtmxT1LaQHZ2PZvvXJOBeVIEiL04VjQWH6AY4cieN75Vd2IgEQbLEYaFr2p4HUiJ2AtZm494ktX5Caxen0iksYpPQDRFDObdC7jg/ijdvK2yFo96b9Q+b/nKllIPCMv0J8SnsSxQNQaQ5w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 216.228.117.161) smtp.rcpttodomain=dpdk.org smtp.mailfrom=nvidia.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=nvidia.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=JJwCZ35cioAPwRTF3gz1x3/7iYdTsQGbt77gpws+kpY=; b=TtDFnBDxG0/ElMiybQrSE7qAvcIpDbud916Cw0ci49w5vzTJDLpNy2AWIH96ctLLbwczh7hB+KHMh/O5rLzK+yOaJncIp1b/epeIEJFaCe7yQCORPoWCqUbxut9H8SE/q3+U5+DFTO4V2PC5DMsvB59vZEZeSK8O7f+lJL7X6rMvh1tmakHMULy9j0OsJKgSdUmPtBuUjiaD8ya4WYUFM8YAHRbR0Di8h9wh8gDfd2zCXSWcfEZ7Is8x9nrg621bsfPFpkmN9h/TS9t3Wmxj+8Loj85uOAp2O5gpEhwPq2KDdoVU2Wnq3VDmWAYc61rPgjBffrPLROM1ZJ300HCLRw== Received: from PH8PR05CA0001.namprd05.prod.outlook.com (2603:10b6:510:2cc::22) by CY8PR12MB7145.namprd12.prod.outlook.com (2603:10b6:930:5f::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7982.26; Wed, 25 Sep 2024 18:06:14 +0000 Received: from SN1PEPF000252A4.namprd05.prod.outlook.com (2603:10b6:510:2cc:cafe::84) by PH8PR05CA0001.outlook.office365.com (2603:10b6:510:2cc::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8005.19 via Frontend Transport; Wed, 25 Sep 2024 18:06:12 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 216.228.117.161) smtp.mailfrom=nvidia.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=nvidia.com; Received-SPF: Pass (protection.outlook.com: domain of nvidia.com designates 216.228.117.161 as permitted sender) receiver=protection.outlook.com; client-ip=216.228.117.161; helo=mail.nvidia.com; pr=C Received: from mail.nvidia.com (216.228.117.161) by SN1PEPF000252A4.mail.protection.outlook.com (10.167.242.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8005.15 via Frontend Transport; Wed, 25 Sep 2024 18:06:11 +0000 Received: from rnnvmail201.nvidia.com (10.129.68.8) by mail.nvidia.com (10.129.200.67) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Wed, 25 Sep 2024 11:05:50 -0700 Received: from pegasus01.mtr.labs.mlnx (10.126.230.35) by rnnvmail201.nvidia.com (10.129.68.8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Wed, 25 Sep 2024 11:05:48 -0700 From: Alexander Kozyrev <akozyrev@nvidia.com> To: <dev@dpdk.org> CC: <dsosnowski@nvidia.com>, <orika@nvidia.com>, <thomas@monjalon.net>, <matan@nvidia.com>, <ferruh.yigit@amd.com>, <stephen@networkplumber.org> Subject: [PATCH v2 0/7] ethdev: jump to table support Date: Wed, 25 Sep 2024 21:05:25 +0300 Message-ID: <20240925180532.3958656-1-akozyrev@nvidia.com> X-Mailer: git-send-email 2.18.2 In-Reply-To: <20240919004813.3158356-1-akozyrev@nvidia.com> References: <20240919004813.3158356-1-akozyrev@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.126.230.35] X-ClientProxiedBy: rnnvmail202.nvidia.com (10.129.68.7) To rnnvmail201.nvidia.com (10.129.68.8) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SN1PEPF000252A4:EE_|CY8PR12MB7145:EE_ X-MS-Office365-Filtering-Correlation-Id: 62d127e3-ac3c-4491-8dcb-08dcdd8cbcf4 X-LD-Processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|1800799024|82310400026|36860700013; X-Microsoft-Antispam-Message-Info: 614vuI/hEUwt/nDQlGuCgqicv4/tOtOpY+JGj9j89DJBM+L07RzV6qcsvLNMHJrN5JDcXQvleMtFG6ya34ZWaYTnCXSEtYlSvgsjFvsRn+yH6uLOupS98lOdE2lzqO0CKgK52LJpoEofRl05apfdM1gfo+ij2aM3DbdmJ64JKU6ZOfn8PrbEEeMfxp7MHV/68AU2Oew6msARKvdTt4+k/ECZM8d6DoYZNDQw3Ij1GNQCcbCFy579yVPVERghCTtDkdBoh0oe4UZgJJAT0ZtLDjVQroQi0Jfa2qa60hBr7fZTJZnKOsqR+wkbUQualhUUTlHEFHHGaq1YXgSCHqVSyrqQoIXV64UNU184vxpk4e32orEZzjOMBmLtLD/psRmEgv8mUAWqyXKgpjyWMh5fdQRglIKJ8P7GNpmGDwpmQCkRSaIxz/D+pAPtLlGV7sKYdMPsS1ofSPm35iY76576qJK1VMsGpnveV7iyEcxB8J/lpDbumNtsxEVZFWUY7gLPeur3+P5H4wX+dc3PXpp+ngnolISgtu5JAblqCs9vFplLei9peOifMq3B3/gDH378jN6yMtnFxvhNIscPOJBxE8Hwb0b+QqjO6MgApuIndHl5Iqqe7Zs5mkZY5m1z38Gog3T2Oj2PnSj6CdRiS9wqQAZQfUX/1dTHf6XK3LIOg2rbbVPSTIDkVrgmi3rlpNz3K6/CxG3asZVYVcbDEI0uGtiaTHVlJ9XvbdKRK5cWKJ0Cdx9uAyB/KzDjx2EbjbhxCLOfXwHdtg/Bwh8rdLuill+HPQQ6fcS2DbDKuVNWPSaz7a/HUPa1FOu3JyIqXbPnaPre3lu+cTJR/ujzq24tGj7MhQFT9gvpp8EE3vtUaPMIF4t9yaxI9ONPZZ6OlSRJPycEoaNjTCsxea5FplJ97sctHOA3dq2Bmgd6ySpkGbrlnZnC0Ox4iKlEqP7meXGf2tkobQKhDXIOR6xmJUnVS/4nha94APHk+atGLiqTEFlb4akXjYJgasWINR4lLowEvZ4CNnrscOugh0q+bIt7oWvxklar5SbtYVibasZ/QNPK17+4u6neQ0S3FChuLcqu2mZypRBv/tRuJeEe5CHj7ORit2y70/apq36wLJbPMuESV5tUgt7T56GIHzAesGqlq4vxprdBhFPgOkE+DuLmyLmaIEI7fLGFwcXgKGyX92CEui95xiPisXXGMm4XLnW+mGs02CP+oye4n0ggMulJDUpwx8TRv9keKcp2uXpInNYW4yqeLXcaHrbNfmUMbmG6uCB5mmBQwXsMxwky0WjCMXsUaZA2Mi8GDC+0puQMNXLXFO2if0eQi4/2lVPvGEf+vqHIrd/UmlNCJMWg1mA6IZy4mZVE15XSiqlrKnXWRFh55/yRPHJW4olegyPiWmuT66q7UIRtprcuCptwGez1HK79hNOf6x3B5D9wuq1DnpMxn5Ufj+Zi1kOOp5h+HJG2 X-Forefront-Antispam-Report: CIP:216.228.117.161; CTRY:US; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:mail.nvidia.com; PTR:dc6edge2.nvidia.com; CAT:NONE; SFS:(13230040)(376014)(1800799024)(82310400026)(36860700013); DIR:OUT; SFP:1101; X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 25 Sep 2024 18:06:11.3665 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 62d127e3-ac3c-4491-8dcb-08dcdd8cbcf4 X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=43083d15-7273-40c1-b7db-39efd9ccc17a; Ip=[216.228.117.161]; Helo=[mail.nvidia.com] X-MS-Exchange-CrossTenant-AuthSource: SN1PEPF000252A4.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY8PR12MB7145 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org |
Series |
ethdev: jump to table support
|
|
Message
Alexander Kozyrev
Sept. 25, 2024, 6:05 p.m. UTC
Introduce new Flow API JUMP_TO_TABLE_INDEX action. It allows bypassing a hierarchy of groups and going directly to a specified flow table. That gives a user the flexibility to jump between different priorities in a group and eliminates the need to do a table lookup in the group hierarchy. The JUMP_TO_TABLE_INDEX action forwards a packet to the specified rule index inside the index-based flow table. The current index-based flow table doesn't do any matching on the packet and executes the actions immediately. Add a new index-based flow table with pattern matching. The JUMP_TO_TABLE_INDEX can redirect a packet to another matching criteria at the specified index in this case. RFC: https://patchwork.dpdk.org/project/dpdk/patch/20240822202753.3856703-1-akozyrev@nvidia.com/ v2: added trace point to flow insertion by index functions. Alexander Kozyrev (7): ethdev: add insertion by index with pattern app/testpmd: add index with pattern insertion type ethdev: add flow rule insertion by index with pattern app/testpmd: add insertion by index with pattern option ethdev: add jump to table index action app/testpmd: add jump to table index action ethdev: add trace points to flow insertion by index app/test-pmd/cmdline_flow.c | 44 +++++++++++++- app/test-pmd/config.c | 22 +++++-- app/test-pmd/testpmd.h | 2 +- doc/guides/prog_guide/rte_flow.rst | 20 +++++++ doc/guides/rel_notes/release_24_11.rst | 13 +++++ lib/ethdev/ethdev_trace.h | 44 ++++++++++++++ lib/ethdev/ethdev_trace_points.c | 6 ++ lib/ethdev/rte_flow.c | 72 ++++++++++++++++++++++- lib/ethdev/rte_flow.h | 81 ++++++++++++++++++++++++++ lib/ethdev/rte_flow_driver.h | 14 +++++ lib/ethdev/version.map | 1 + 11 files changed, 309 insertions(+), 10 deletions(-)
Comments
> -----Original Message----- > From: Alexander Kozyrev <akozyrev@nvidia.com> > Sent: Wednesday, September 25, 2024 20:05 > To: dev@dpdk.org > Cc: Dariusz Sosnowski <dsosnowski@nvidia.com>; Ori Kam > <orika@nvidia.com>; NBU-Contact-Thomas Monjalon (EXTERNAL) > <thomas@monjalon.net>; Matan Azrad <matan@nvidia.com>; > ferruh.yigit@amd.com; stephen@networkplumber.org > Subject: [PATCH v2 0/7] ethdev: jump to table support > > Introduce new Flow API JUMP_TO_TABLE_INDEX action. > It allows bypassing a hierarchy of groups and going directly to a specified flow > table. That gives a user the flexibility to jump between different priorities in a > group and eliminates the need to do a table lookup in the group hierarchy. > The JUMP_TO_TABLE_INDEX action forwards a packet to the specified rule > index inside the index-based flow table. > > The current index-based flow table doesn't do any matching on the packet and > executes the actions immediately. > Add a new index-based flow table with pattern matching. > The JUMP_TO_TABLE_INDEX can redirect a packet to another matching criteria > at the specified index in this case. > > RFC: > https://patchwork.dpdk.org/project/dpdk/patch/20240822202753.3856703- > 1-akozyrev@nvidia.com/ > v2: added trace point to flow insertion by index functions. > > Alexander Kozyrev (7): > ethdev: add insertion by index with pattern > app/testpmd: add index with pattern insertion type > ethdev: add flow rule insertion by index with pattern > app/testpmd: add insertion by index with pattern option > ethdev: add jump to table index action > app/testpmd: add jump to table index action > ethdev: add trace points to flow insertion by index > > app/test-pmd/cmdline_flow.c | 44 +++++++++++++- > app/test-pmd/config.c | 22 +++++-- > app/test-pmd/testpmd.h | 2 +- > doc/guides/prog_guide/rte_flow.rst | 20 +++++++ > doc/guides/rel_notes/release_24_11.rst | 13 +++++ > lib/ethdev/ethdev_trace.h | 44 ++++++++++++++ > lib/ethdev/ethdev_trace_points.c | 6 ++ > lib/ethdev/rte_flow.c | 72 ++++++++++++++++++++++- > lib/ethdev/rte_flow.h | 81 ++++++++++++++++++++++++++ > lib/ethdev/rte_flow_driver.h | 14 +++++ > lib/ethdev/version.map | 1 + > 11 files changed, 309 insertions(+), 10 deletions(-) > > -- > 2.18.2 Series-acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com> Best regards, Dariusz Sosnowski
On 9/25/2024 7:05 PM, Alexander Kozyrev wrote: > Introduce new Flow API JUMP_TO_TABLE_INDEX action. > It allows bypassing a hierarchy of groups and going directly > to a specified flow table. That gives a user the flexibility > to jump between different priorities in a group and eliminates > the need to do a table lookup in the group hierarchy. > The JUMP_TO_TABLE_INDEX action forwards a packet to the > specified rule index inside the index-based flow table. > > The current index-based flow table doesn't do any matching > on the packet and executes the actions immediately. > Add a new index-based flow table with pattern matching. > The JUMP_TO_TABLE_INDEX can redirect a packet to another > matching criteria at the specified index in this case. > > RFC: https://patchwork.dpdk.org/project/dpdk/patch/20240822202753.3856703-1- > akozyrev@nvidia.com/ > v2: added trace point to flow insertion by index functions. > > Alexander Kozyrev (7): > ethdev: add insertion by index with pattern > app/testpmd: add index with pattern insertion type > ethdev: add flow rule insertion by index with pattern > app/testpmd: add insertion by index with pattern option > ethdev: add jump to table index action > app/testpmd: add jump to table index action > ethdev: add trace points to flow insertion by index > Series applied to dpdk-next-net/main, thanks.