From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 35B0EA0353; Wed, 19 Jan 2022 08:16:59 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 08C2540DF6; Wed, 19 Jan 2022 08:16:59 +0100 (CET) Received: from NAM11-BN8-obe.outbound.protection.outlook.com (mail-bn8nam11on2063.outbound.protection.outlook.com [40.107.236.63]) by mails.dpdk.org (Postfix) with ESMTP id 8752D4013F for ; Wed, 19 Jan 2022 08:16:58 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=R9OA5M9gNNWJ+qG8441viosjNL8oJmnL/QWeNVRHrHlJPmV2GS1fuRX2AlxSwsTnc3GuOdTSzULQKO77wpFo0+/oJlcAkpSWoeYnYvJS2uIBLZllwvxF3JGXQxNvAoBZkUkd4/kGiZMum9NYTxu1q5cbAaK7K6ByQCFgvAUwB1NIdWJJnVIFZXwNYseI6ZAHYTQk2ZT0BUEMpBPkXRTUbJtbZW/dh2oOmGWOFHNe7cjLbpBCFkDz81gcBPdKkn8pYoVq1r5ySvZJslaQMU6E0wOzWa0io4MOK6lt15q5mCR9ZQOERd9f0ZCFsgvl+FxH4KV/V4HY9HVyfL2Zd2W5Zw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=4L3ODDregrJPifPqUUvqBvhqMtTPDO2Fk+sToTo7olI=; b=D1Tw6B56ARdEMMzVOXfBSntb44hfELHsNE62jrfNvv1kE/l8ZNMk1Z4q1qdvvKZ8ZLudovSW7Oeu8MI8vmu8Azmt7Luv1TVottzKV/t7GVF20VNOoB9sciu6SkV5EYipcFT/YC2rx96erRjH5hwtm3mmbZDkY+wgnnV7I6ADAMy5NPSItYJn9yiK3Qdw+z84y90A2eRH38RMaDbdX2nN1ovSyUT3FgEYSbG0SlbTI+1doXa2QWsQFJiozK4mQBUaRpyVrIhoPd4nXdhWol0X9DWnw3susfoUVSHJ2L1LfmUcOlP5qtGrzU9zEE5Ty6QAtAUt7B1b96LqEIfG6eSaHw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none 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=4L3ODDregrJPifPqUUvqBvhqMtTPDO2Fk+sToTo7olI=; b=IsoZPgVPCdjy/GW7byvVBd9vteN5Fb3T3cuWilfM0jJZfnNCQgQFsJi8ghSpw8DNg0ggGMxvmEMjXnRjCxeL/s3UhSiwhpJMNxn5N8BNx7Mad9aveGa87ftRbF5mcdvcf+HH+X/MPa2UHfjLL5YD2hF21k4fL4OzqBNu/0GUUMupdKNOtFdCSPg0MOXTMAt+u2ZQgo+pJ22iXKFaRgjb0jGl4o1ElXtXw4KWMWzrZX4nQt0FJP+4VaaQi5GpBwW+/iFk5R9Bb43GyhAWnZsEheI7UyHR4iRqJe9BEzQsIbJRWIb1GNidL45yvi+DyvFMQ9BQTM32Ix2LAYNX+MwWFw== Received: from CO6PR12MB5396.namprd12.prod.outlook.com (2603:10b6:303:139::8) by DM6PR12MB3195.namprd12.prod.outlook.com (2603:10b6:5:183::30) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4888.11; Wed, 19 Jan 2022 07:16:57 +0000 Received: from CO6PR12MB5396.namprd12.prod.outlook.com (2603:10b6:303:139::8) by CO6PR12MB5396.namprd12.prod.outlook.com (2603:10b6:303:139::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4909.8; Wed, 19 Jan 2022 07:16:52 +0000 Received: from CO6PR12MB5396.namprd12.prod.outlook.com ([fe80::c446:adef:8172:f19f]) by CO6PR12MB5396.namprd12.prod.outlook.com ([fe80::c446:adef:8172:f19f%7]) with mapi id 15.20.4909.008; Wed, 19 Jan 2022 07:16:52 +0000 From: Suanming Mou To: Alexander Kozyrev , "dev@dpdk.org" CC: Ori Kam , "NBU-Contact-Thomas Monjalon (EXTERNAL)" , "ivan.malov@oktetlabs.ru" , "andrew.rybchenko@oktetlabs.ru" , "ferruh.yigit@intel.com" , "mohammad.abdul.awal@intel.com" , "qi.z.zhang@intel.com" , "jerinj@marvell.com" , "ajit.khaparde@broadcom.com" Subject: RE: [PATCH v2 00/10] ethdev: datapath-focused flow rules management Thread-Topic: [PATCH v2 00/10] ethdev: datapath-focused flow rules management Thread-Index: AQHYDIBnsqh0TzRIWkKtac/m60rHIKxp71dg Date: Wed, 19 Jan 2022 07:16:52 +0000 Message-ID: References: <20211006044835.3936226-1-akozyrev@nvidia.com> <20220118153027.3947448-1-akozyrev@nvidia.com> In-Reply-To: <20220118153027.3947448-1-akozyrev@nvidia.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: c578327c-8d0d-4d55-422e-08d9db1baae1 x-ms-traffictypediagnostic: CO6PR12MB5396:EE_|DM6PR12MB3195:EE_ x-ld-processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:8273; x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: tlfTRJdh5qDvLuq31e9XM4qDHJupo7sJ9mps692S764RT+2i7eKVg7tt6e0x9ZONDPGKE7Zh+abDheHCa1R/ak+joXitoOYhIJz1Wv+FY9U8VmAz+EAELrOPre1rIRl7JpC4dLcxywPpwKu5L0PiuK6NBdaDdZPGozyPQR46BSfW1BnTQ3/jSZwkw5l/3XKM0/SRviWU1hyj7fZsJeiHlK4bImKV8OGECwAcU1xBkHIaI7vjlD5G2AnhCBLxIldK1qhOSNvklEcvcJo6qubfcKFSxgtc4ver5PBJc15N67uvYg9Z17KEXi65DBwJ4bWlxHW1+rGnKuqXDuv6/o4aiac/8QlDyBY4vfd7Y5Bk2Br3U3GgwJOSJqeloaMZ4KUbG1fd3qEpK0lhQ5xp44GLkbTSnYUs0wF2O/GNoW8Z7TjfWXZ1sCoAv6mkXZR7t06D2LyQx+r72xWuh00bDmPEOq3+JUQHQQYvxQDAARcqlHcXGlUSfbIeSDI+R2dRvIW7/EGjjnC5waFyVJmn2+SCL6O4fP232umbZYuG3yL5WhzfmApEfleguRpWLX/KXIK9MJJ275VfmGFg4SUtihl0R4mPFOLrlJnx05SUbGbuPzqr/eik0sAbjHrgnzUwmb1r6pINaJEvm0tnkaqngzDADCQ4KWINy8zKhOQ+iHHKpodej4JlebKlHUYJmF6bg6rYhDPEBqVvKuczqKBllungfgp/GxOggOmnRl882d3OtXxxijGbWDHKdnAc+uImSieJtQBu/zQed9OIKaHp3242NjcUKNBAA/9XI3YsGXqT9Yc= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CO6PR12MB5396.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(66556008)(66946007)(76116006)(4326008)(8936002)(6506007)(122000001)(66476007)(64756008)(33656002)(8676002)(5660300002)(2906002)(186003)(9686003)(26005)(54906003)(86362001)(38100700002)(83380400001)(110136005)(7696005)(316002)(38070700005)(55016003)(66446008)(71200400001)(53546011)(966005)(508600001)(52536014); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?to93mIPIELbdMjRwvnOD7Fyk7BKGndOzJ4foq6uhlRDq7mghHURkD8Rb1dKx?= =?us-ascii?Q?Ufh7dVbhI3MebRjyJKR+V3tthKglDnPUpW1CDoeUPeD4mvRzmAcAd12Tz6hP?= =?us-ascii?Q?LP3NVBeRF9+QjFSXg7lyytjnXYw03DaiZ4D5KNjW2bS/MhE2PNWFMkaO9tif?= =?us-ascii?Q?MGNOmic/hQoowKM67XdxeMw0NGwIBL10E1i6w8VtW2YrM74rhm3/XXRN53FY?= =?us-ascii?Q?FJiBXamX6iFZ/U75TOJWRUBnqBeictX6oM/+fKtNHISEBjgnImIKbVVfGpgr?= =?us-ascii?Q?+41JUHzi8/r990fg/gmxVIYG/BAbOh6kLIbRSAUyp0AKsZPTYHQ1uUIQLayY?= =?us-ascii?Q?HucCqDJqRDQTcnD19OqvlA8KqKVtBvT+4JmgzNt65t57Qz2usCAcMDrGBjAT?= =?us-ascii?Q?lIFCxpN8eyBGEI2khIQ36j9ep2anpguUbDz38LOvq3JpFvn+6/UPrgkYjY94?= =?us-ascii?Q?vO3IbXCK9nvpLdWP0TkNOb7MfLNdWbaAAKyBcdNmyOCPR2QAyvIrzUcr7ET6?= =?us-ascii?Q?PNzNQcJG3V5rSPf6BuNjkhUowx1baP8kAwRNEAx+VglLuVIcWAOWuHyKP5Dz?= =?us-ascii?Q?vsrO5Ysal96zJqHiw8vbRXtKpngHFZXvGJnnRwHybvOaHv7EAX2CPbu+QrNe?= =?us-ascii?Q?GhxEjs1YOTLBeXB1YP01wOsawDkVZFAqM6ELBfLs6tMuqWXv61lBPEMM6MHA?= =?us-ascii?Q?ckGkuFqyn6PJ5f5NOLX60JdyNsSb2eHivPRMNqL6toH/cRcGNeDzXbMjyvtu?= =?us-ascii?Q?nZIikaxDiFAEsQ12HvuGxi6mnRBUCIKvkBf0+H/dg6cC6Bs3N0BKM+KXFEYz?= =?us-ascii?Q?cvCwlf91L07be15eGMGGfrBOCfJfy/PZYNIgBskolFAjjbX7pFd8trWicXfK?= =?us-ascii?Q?zc6Hv9TP4yEtBYIm0MUyBRcrjLs9PwTVoUuu0npQ6shk3a3MG4cprMOJ0uQw?= =?us-ascii?Q?HAXn5311a4QpCLnw9iKp/WBorR1G80t+v+Y+tMZpUXgRECo2HkpcqgJHjBQk?= =?us-ascii?Q?fD2GVQHgrQre4ZIIGkPlpQMBmqk8j+TZLa9ddlsQxiOukUHieDl7MsFlnZTj?= =?us-ascii?Q?f9Q+kDPeGi+Irxk2zxiNijyNR/6t0rzxPAZvKG/RYPep8d5vHKJErkV1u9IG?= =?us-ascii?Q?+dxizJZX6qhfUXFeJxBctGw59RvFePe27Dskw+hlhftyrecnpYuDESUaAWie?= =?us-ascii?Q?N+aQMG/Rt2Wbu+xnUcDNipTuTfknMHYVxvbHyYnU7LVEJNzCSWpslzJmMCvl?= =?us-ascii?Q?RSpzdpdy5uCb8vorm7PWjoZo4S5GJOJx8gcDJqyStu/V5Ez0QPLn9aI5e2zh?= =?us-ascii?Q?h/NPUl1PC3pgMPli9T4W/4kDHxq6ticfwxGaEGAhDtl/UZHp47LoLxT/c0sL?= =?us-ascii?Q?24RL8hiW8Fc3YXM8vEwiQfn2CMyGHwEbqsKOuP4WY6b1atEQ1k1UG9/mk8L/?= =?us-ascii?Q?K8RD1LDUisOGhSwXcsU7jGGQFAk44nsu/9UBMRAwj9MOAmog8HhxdWs6h/2l?= =?us-ascii?Q?MgttHS0/CucG/SGZ33bK6qmC99d2UZNiG6B7w4NMjXT6qw4q9Fsq6TX9zegi?= =?us-ascii?Q?4nutBsRD7dmoYfw0Xt3CVIhE5B/dYWMOsVKW/0kNpMm1MBH98ov1WZZo4ziF?= =?us-ascii?Q?b+BT1z6uqeUMioUFpoj2Yzo=3D?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO6PR12MB5396.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: c578327c-8d0d-4d55-422e-08d9db1baae1 X-MS-Exchange-CrossTenant-originalarrivaltime: 19 Jan 2022 07:16:52.5875 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: a8kZDWElJq9ETeHT0MgS5toCWOzCx6tHa8kWQaRfwLVZl4wkxjiS/Optwur7jPbdFUjwe+iQuKX4oyRXg0eVLA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR12MB3195 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org > -----Original Message----- > From: Alexander Kozyrev > Sent: Tuesday, January 18, 2022 11:30 PM > To: dev@dpdk.org > Cc: Ori Kam ; NBU-Contact-Thomas Monjalon (EXTERNAL) > ; ivan.malov@oktetlabs.ru; > andrew.rybchenko@oktetlabs.ru; ferruh.yigit@intel.com; > mohammad.abdul.awal@intel.com; qi.z.zhang@intel.com; jerinj@marvell.com; > ajit.khaparde@broadcom.com > Subject: [PATCH v2 00/10] ethdev: datapath-focused flow rules management >=20 > Three major changes to a generic RTE Flow API were implemented in order t= o > speed up flow rule insertion/destruction and adapt the API to the needs o= f a > datapath-focused flow rules management applications: >=20 > 1. Pre-configuration hints. > Application may give us some hints on what type of resources are needed. > Introduce the configuration routine to prepare all the needed resources i= nside a > PMD/HW before any flow rules are created at the init stage. >=20 > 2. Flow grouping using templates. > Use the knowledge about which flow rules are to be used in an application= and > prepare item and action templates for them in advance. Group flow rules w= ith > common patterns and actions together for better resource management. >=20 > 3. Queue-based flow management. > Perform flow rule insertion/destruction asynchronously to spare the datap= ath > from blocking on RTE Flow API and allow it to continue with packet proces= sing. > Enqueue flow rules operations and poll for the results later. >=20 > testpmd examples are part of the patch series. PMD changes will follow. >=20 > RFC: > https://patchwork.dpdk.org/project/dpdk/cover/20211006044835.3936226-1- > akozyrev@nvidia.com/ >=20 > Signed-off-by: Alexander Kozyrev Reviewed-by: Suanming Mou >=20 > --- > v2: fixed patch series thread >=20 > Alexander Kozyrev (10): > ethdev: introduce flow pre-configuration hints > ethdev: add flow item/action templates > ethdev: bring in async queue-based flow rules operations > app/testpmd: implement rte flow configure > app/testpmd: implement rte flow item/action template > app/testpmd: implement rte flow table > app/testpmd: implement rte flow queue create flow > app/testpmd: implement rte flow queue drain > app/testpmd: implement rte flow queue dequeue > app/testpmd: implement rte flow queue indirect action >=20 > app/test-pmd/cmdline_flow.c | 1484 ++++++++++++++++- > app/test-pmd/config.c | 731 ++++++++ > app/test-pmd/testpmd.h | 61 + > doc/guides/prog_guide/img/rte_flow_q_init.svg | 71 + > .../prog_guide/img/rte_flow_q_usage.svg | 60 + > doc/guides/prog_guide/rte_flow.rst | 319 ++++ > doc/guides/rel_notes/release_22_03.rst | 19 + > doc/guides/testpmd_app_ug/testpmd_funcs.rst | 350 +++- > lib/ethdev/rte_flow.c | 332 ++++ > lib/ethdev/rte_flow.h | 680 ++++++++ > lib/ethdev/rte_flow_driver.h | 103 ++ > lib/ethdev/version.map | 16 + > 12 files changed, 4203 insertions(+), 23 deletions(-) create mode 10064= 4 > doc/guides/prog_guide/img/rte_flow_q_init.svg > create mode 100644 doc/guides/prog_guide/img/rte_flow_q_usage.svg >=20 > -- > 2.18.2