From: SimonX Lu <simonx.lu@intel.com> To: dev@dpdk.org Cc: jia.guo@intel.com, haiyue.wang@intel.com, qiming.yang@intel.com, beilei.xing@intel.com, orika@nvidia.com, Simon Lu <simonx.lu@intel.com> Subject: [dpdk-dev] [PATCH v1 2/8] app/testpmd: support action mirror for flow command Date: Wed, 14 Oct 2020 08:41:25 +0000 Message-ID: <20201014084131.72035-3-simonx.lu@intel.com> (raw) In-Reply-To: <20201014084131.72035-1-simonx.lu@intel.com> From: Simon Lu <simonx.lu@intel.com> Add mirror index: ACTION_MIRROR, ACTION_MIRROR_VF, ACTION_MIRROR_VF_ID. Append the mirror action to the token_list for flow parse. Signed-off-by: Simon Lu <simonx.lu@intel.com> --- app/test-pmd/cmdline_flow.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c index 6e04d538e..3bf4293a7 100644 --- a/app/test-pmd/cmdline_flow.c +++ b/app/test-pmd/cmdline_flow.c @@ -276,6 +276,9 @@ enum index { ACTION_VF, ACTION_VF_ORIGINAL, ACTION_VF_ID, + ACTION_MIRROR, + ACTION_MIRROR_VF, + ACTION_MIRROR_VF_ID, ACTION_PHY_PORT, ACTION_PHY_PORT_ORIGINAL, ACTION_PHY_PORT_INDEX, @@ -1144,6 +1147,7 @@ static const enum index next_action[] = { ACTION_DROP, ACTION_COUNT, ACTION_RSS, + ACTION_MIRROR, ACTION_PF, ACTION_VF, ACTION_PHY_PORT, @@ -1233,6 +1237,17 @@ static const enum index action_vf[] = { ZERO, }; +static const enum index action_mirror[] = { + ACTION_PF, + ACTION_MIRROR_VF, + ZERO, +}; + +static const enum index action_mirror_vf[] = { + ACTION_MIRROR_VF_ID, + ZERO, +}; + static const enum index action_phy_port[] = { ACTION_PHY_PORT_ORIGINAL, ACTION_PHY_PORT_INDEX, @@ -3116,6 +3131,27 @@ static const struct token token_list[] = { .call = parse_vc_action_rss_queue, .comp = comp_vc_action_rss_queue, }, + [ACTION_MIRROR] = { + .name = "mirror", + .help = "mirror", + .priv = PRIV_ACTION(MIRROR, 0), + .next = NEXT(action_mirror), + .call = parse_vc, + }, + [ACTION_MIRROR_VF] = { + .name = "vf", + .help = "direct traffic to a virtual function ID", + .priv = PRIV_ACTION(VF, sizeof(struct rte_flow_action_vf)), + .next = NEXT(action_mirror_vf), + .call = parse_vc, + }, + [ACTION_MIRROR_VF_ID] = { + .name = "id", + .help = "VF ID", + .next = NEXT(NEXT_ENTRY(ACTION_NEXT), NEXT_ENTRY(UNSIGNED)), + .args = ARGS(ARGS_ENTRY(struct rte_flow_action_vf, id)), + .call = parse_vc_conf, + }, [ACTION_PF] = { .name = "pf", .help = "direct traffic to physical function", -- 2.17.1
next prev parent reply other threads:[~2020-10-14 8:43 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-10-14 8:41 [dpdk-dev] [PATCH v1 0/8] use generic flow command to re-realize mirror rule SimonX Lu 2020-10-14 8:41 ` [dpdk-dev] [PATCH v1 1/8] ethdev: support the mirror action for flow SimonX Lu 2020-10-14 12:07 ` Ori Kam 2020-10-14 8:41 ` SimonX Lu [this message] 2020-10-14 8:41 ` [dpdk-dev] [PATCH v1 3/8] net/ixgbe: add mirror rule config and extend flow filter type SimonX Lu 2020-10-14 8:41 ` [dpdk-dev] [PATCH v1 4/8] net/ixgbe: define the mirror filter paser SimonX Lu 2020-10-14 8:41 ` [dpdk-dev] [PATCH v1 5/8] net/ixgbe: use generic flow command to re-realize mirror rule SimonX Lu 2020-10-14 8:41 ` [dpdk-dev] [PATCH v1 6/8] net/i40e: add mirror rule config and export add/del rule APIs SimonX Lu 2020-10-14 8:41 ` [dpdk-dev] [PATCH v1 7/8] net/i40e: define the mirror filter paser SimonX Lu 2020-10-14 8:41 ` [dpdk-dev] [PATCH v1 8/8] net/i40e: use generic flow command to re-realize mirror rule SimonX Lu [not found] ` <20201103082809.41149-1-stevex.yang@intel.com> 2020-11-03 8:28 ` [dpdk-dev] [RFC v2 1/6] net/i40e: add mirror rule config and add/del rule APIs Steve Yang 2020-11-03 8:28 ` [dpdk-dev] [RFC v2 2/6] net/i40e: define the mirror filter parser Steve Yang 2021-02-18 18:59 ` Thomas Monjalon 2021-02-19 12:56 ` Ferruh Yigit 2020-11-03 8:28 ` [dpdk-dev] [RFC v2 3/6] net/i40e: use generic flow command to re-realize mirror rule Steve Yang 2020-11-03 8:28 ` [dpdk-dev] [RFC v2 4/6] net/ixgbe: add mirror rule config and add/del rule APIs Steve Yang 2020-11-03 8:28 ` [dpdk-dev] [RFC v2 5/6] net/ixgbe: define the mirror filter parser Steve Yang 2021-02-19 12:57 ` Ferruh Yigit 2020-11-03 8:28 ` [dpdk-dev] [RFC v2 6/6] net/ixgbe: use flow sample to re-realize mirror rule Steve Yang 2021-02-19 12:59 ` Ferruh Yigit
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20201014084131.72035-3-simonx.lu@intel.com \ --to=simonx.lu@intel.com \ --cc=beilei.xing@intel.com \ --cc=dev@dpdk.org \ --cc=haiyue.wang@intel.com \ --cc=jia.guo@intel.com \ --cc=orika@nvidia.com \ --cc=qiming.yang@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
DPDK patches and discussions This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \ dev@dpdk.org public-inbox-index dev Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.dev AGPL code for this site: git clone https://public-inbox.org/public-inbox.git