[PATCH 2/3] app/testpmd: add new action kernel
Michael Savisko
michaelsav at nvidia.com
Mon Sep 12 14:59:07 CEST 2022
Add new test-pmd rte_flow action 'send_to_kernel'. The application
may use this action to route the packet to the kernel while still
in the HW.
The example of test-pmd command:
flow create 0 ingress priority 0 group 1 pattern eth type spec 0x0800
type mask 0xffff / end actions send_to_kernel / end
Signed-off-by: Michael Savisko <michaelsav at nvidia.com>
---
app/test-pmd/cmdline_flow.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/app/test-pmd/cmdline_flow.c b/app/test-pmd/cmdline_flow.c
index 7f50028eb7..042f6b34a6 100644
--- a/app/test-pmd/cmdline_flow.c
+++ b/app/test-pmd/cmdline_flow.c
@@ -612,6 +612,7 @@ enum index {
ACTION_PORT_REPRESENTOR_PORT_ID,
ACTION_REPRESENTED_PORT,
ACTION_REPRESENTED_PORT_ETHDEV_PORT_ID,
+ ACTION_SEND_TO_KERNEL,
};
/** Maximum size for pattern in struct rte_flow_item_raw. */
@@ -1872,6 +1873,7 @@ static const enum index next_action[] = {
ACTION_CONNTRACK_UPDATE,
ACTION_PORT_REPRESENTOR,
ACTION_REPRESENTED_PORT,
+ ACTION_SEND_TO_KERNEL,
ZERO,
};
@@ -6341,6 +6343,13 @@ static const struct token token_list[] = {
.help = "submit a list of associated actions for red",
.next = NEXT(next_action),
},
+ [ACTION_SEND_TO_KERNEL] = {
+ .name = "send_to_kernel",
+ .help = "send packets to kernel",
+ .priv = PRIV_ACTION(SEND_TO_KERNEL, 0),
+ .next = NEXT(NEXT_ENTRY(ACTION_NEXT)),
+ .call = parse_vc,
+ },
/* Top-level command. */
[ADD] = {
--
2.27.0
More information about the dev
mailing list