From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 548A2A04B7; Wed, 14 Oct 2020 13:40:28 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 232A51DDAE; Wed, 14 Oct 2020 13:40:27 +0200 (CEST) Received: from mellanox.co.il (mail-il-dmz.mellanox.com [193.47.165.129]) by dpdk.org (Postfix) with ESMTP id C08ED1DB2A for ; Wed, 14 Oct 2020 13:40:24 +0200 (CEST) Received: from Internal Mail-Server by MTLPINE1 (envelope-from andreyv@nvidia.com) with SMTP; 14 Oct 2020 14:40:21 +0300 Received: from nvidia.com (r-arch-host11.mtr.labs.mlnx [10.213.43.60]) by labmailer.mlnx (8.13.8/8.13.8) with ESMTP id 09EBeKD6000998; Wed, 14 Oct 2020 14:40:21 +0300 From: Andrey Vesnovaty To: dev@dpdk.org Cc: jer@marvell.com, jerinjacobk@gmail.com, thomas@monjalon.net, ferruh.yigit@intel.com, stephen@networkplumber.org, bruce.richardson@intel.com, orika@nvidia.com, viacheslavo@nvidia.com, andrey.vesnovaty@gmail.com, mdr@ashroe.eu, nhorman@tuxdriver.com, ajit.khaparde@broadcom.com, samik.gupta@broadcom.com, andrew.rybchenko@oktetlabs.ru Date: Wed, 14 Oct 2020 14:40:13 +0300 Message-Id: <20201014114015.17197-1-andreyv@nvidia.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200702120511.16315-1-andreyv@mellanox.com> References: <20200702120511.16315-1-andreyv@mellanox.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v8 0/2] RTE flow shared action 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 patchset introduces shared action API for RTE flow. v8 changes: * misc spelling fixes and rephrase in commit messages and documentation * RTE flow shared action API: * invalid port error documented * invalid port handling * code readability improvements * testpmd example moved from commit message to below testpmd: shared action usage In this section testpmd command syntax should be treated as pseudo-code, may be out of sync with future testpmd syntax for shared action cli. In order to utilize introduced API testpmd cli may implement following extension create/update/destroy/query shared action accordingly flow shared_action {port} create [action_id {id}] [ingress] [egress] action {action} / end flow shared_action {port} update {id} action {action} / end flow shared_action {port} destroy action_id {id} [...] flow shared_action {port} query {id} testpmd example: configure rss to queues 1 & 2 > flow shared_action 0 create action_id 100 \ ingress action rss queues 1 2 end / end create flow rule utilizing shared action > flow create 0 ingress \ pattern eth dst is 0c:42:a1:15:fd:ac / ipv6 / tcp / end \ actions shared 100 / end add 2 more queues > flow shared_action 0 modify 100 action rss queues 1 2 3 4 end / end Andrey Vesnovaty (2): ethdev: add shared actions to flow API app/testpmd: support shared action app/test-pmd/cmdline.c | 18 ++ app/test-pmd/cmdline_flow.c | 294 +++++++++++++++++++- app/test-pmd/config.c | 216 ++++++++++++++ app/test-pmd/testpmd.h | 20 ++ doc/guides/prog_guide/rte_flow.rst | 19 ++ doc/guides/rel_notes/release_20_11.rst | 10 + doc/guides/testpmd_app_ug/testpmd_funcs.rst | 112 ++++++++ lib/librte_ethdev/rte_ethdev_version.map | 4 + lib/librte_ethdev/rte_flow.c | 90 ++++++ lib/librte_ethdev/rte_flow.h | 172 +++++++++++- lib/librte_ethdev/rte_flow_driver.h | 23 ++ 11 files changed, 976 insertions(+), 2 deletions(-) -- 2.26.2