[PATCH v2 3/4] net/mlx5: add send to kernel action resource holder

2022-10-19 Thread Michael Savisko
future actions of this type. Release of these resources will be done when all shared DR resources are being released in mlx5_os_free_shared_dr(). Change function flow_dv_tbl_resource_release() from static to external. Signed-off-by: Michael Savisko Acked-by: Matan Azrad --- drivers/net/mlx5

[PATCH v2 4/4] net/mlx5: translation of rte flow send to kernel action

2022-10-19 Thread Michael Savisko
send_to_kernel action object. Called from flow_dv_translate(). Fail translation of RTE_FLOW_ACTION_TYPE_SEND_TO_KERNEL action in HW steering. Signed-off-by: Michael Savisko Acked-by: Matan Azrad --- doc/guides/nics/features/default.ini | 1 + doc/guides/nics/features/mlx5.ini| 1 + drivers/net

[PATCH v2 2/4] net/mlx5: introduce new mlx5 action flag

2022-10-19 Thread Michael Savisko
Add new mlx5 action flag MLX5_FLOW_ACTION_SEND_TO_KERNEL. Add element MLX5_FLOW_FATE_SEND_TO_KERNEL in enum mlx5_flow_fate_type. For that purpose field 'fate_action' in structure mlx5_flow_handle must be expanded from 3 bits to 4 bits. Signed-off-by: Michael Savisko Acked-by: M

[PATCH v2 1/4] common/mlx5: new glue callback for send to kernel action

2022-10-19 Thread Michael Savisko
HAVE_MLX5DV_DR_ACTION_CREATE_DEST_ROOT_TABLE macro if function mlx5dv_dr_action_create_dest_root_table exists in infiniband/mlx5dv.h Signed-off-by: Michael Savisko Acked-by: Matan Azrad --- drivers/common/mlx5/linux/meson.build | 2 ++ drivers/common/mlx5/linux/mlx5_glue.c | 17 + drivers/common/mlx5

[PATCH v2 0/4] net/mlx5: implement send to kernel action

2022-10-19 Thread Michael Savisko
This patchset provides mlx5 implementation of new rte_flow action RTE_FLOW_ACTION_TYPE_SEND_TO_KERNEL. Depends-on: patch-6838dd4bf976 ("ethdev: add send to kernel action") Signed-off-by: Michael Savisko Acked-by: Matan Azrad --- v2: - updated after code review v1: https://patche

[PATCH v5] ethdev: add send to kernel action

2022-10-03 Thread Michael Savisko
command: flow create 0 ingress priority 0 group 1 pattern eth type spec 0x0800 type mask 0x / end actions send_to_kernel / end Signed-off-by: Michael Savisko Acked-by: Ori Kam --- v5: - added description of the feature to release notes v4: - improve descriptio

[PATCH v4] ethdev: add send to kernel action

2022-09-29 Thread Michael Savisko
command: flow create 0 ingress priority 0 group 1 pattern eth type spec 0x0800 type mask 0x / end actions send_to_kernel / end Signed-off-by: Michael Savisko Acked-by: Ori Kam --- v4: - improve description comment above RTE_FLOW_ACTION_TYPE_SEND_TO_KERNEL v3: http://patches.dpdk.org/pro

RE: [PATCH v3] ethdev: add send to kernel action

2022-09-28 Thread Michael Savisko
> -Original Message- > From: Andrew Rybchenko > Sent: Monday, 26 September 2022 16:07 > > On 9/19/22 18:50, Michael Savisko wrote: > > In some cases application may receive a packet that should have been > > received by the kernel. In this case application use

[PATCH 10/10] net/mlx5: translation of rte flow send to kernel action

2022-09-20 Thread Michael Savisko
Add flow_dv_translate_action_send_to_kernel() function which will allocate rdma-core send_to_kernel action object. Called from flow_dv_translate(). Signed-off-by: Michael Savisko --- drivers/net/mlx5/mlx5_flow_dv.c | 62 +++-- 1 file changed, 59 insertions(+), 3

[PATCH 09/10] net/mlx5: add send to kernel action resource holder

2022-09-20 Thread Michael Savisko
future actions of this type. Release of these resources will be done when all shared DR resources are being released in mlx5_os_free_shared_dr(). Signed-off-by: Michael Savisko --- drivers/net/mlx5/linux/mlx5_os.c | 11 +++ drivers/net/mlx5/mlx5.h | 6 ++ 2 files changed

[PATCH 08/10] net/mlx5: expose table resource release function

2022-09-20 Thread Michael Savisko
Change function flow_dv_tbl_resource_release() from static to external. Prestep for next commit. Signed-off-by: Michael Savisko --- drivers/net/mlx5/mlx5_flow.h| 2 ++ drivers/net/mlx5/mlx5_flow_dv.c | 6 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/drivers/net/mlx5

[PATCH 07/10] net/mlx5: get priority to send traffic to kernel

2022-09-20 Thread Michael Savisko
Introduce mlx5_get_send_to_kernel_priority() function which returns value of priority which must be used to jump back to table 0 in order to send traffic to kernel. This function returns lowest priority. Signed-off-by: Michael Savisko --- drivers/net/mlx5/mlx5_flow.c | 33

[PATCH 06/10] net/mlx5: introduce new mlx5 flow fate

2022-09-20 Thread Michael Savisko
Add element MLX5_FLOW_FATE_SEND_TO_KERNEL in enum mlx5_flow_fate_type. For that purpose field 'fate_action' in structure mlx5_flow_handle must be expanded from 3 bits to 4 bits. Signed-off-by: Michael Savisko --- drivers/net/mlx5/mlx5_flow.h| 3 ++- drivers/net/mlx5/mlx5_flo

[PATCH 05/10] net/mlx5: introduce new mlx5 action flag

2022-09-20 Thread Michael Savisko
Add new mlx5 action flag MLX5_FLOW_ACTION_SEND_TO_KERNEL. Signed-off-by: Michael Savisko --- drivers/net/mlx5/mlx5_flow.h| 4 +++- drivers/net/mlx5/mlx5_flow_dv.c | 11 +++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/drivers/net/mlx5/mlx5_flow.h b/drivers/net

[PATCH 04/10] net/mlx5: add function to create send to kernel action

2022-09-20 Thread Michael Savisko
Add static inline mlx5_flow_os_create_flow_action_send_to_kernel(), which calls dr_create_flow_action_send_to_kernel glue callback. Signed-off-by: Michael Savisko --- drivers/net/mlx5/linux/mlx5_flow_os.h | 22 ++ 1 file changed, 22 insertions(+) diff --git a/drivers/net

[PATCH 03/10] common/mlx5: new glue callback for send to kernel action

2022-09-20 Thread Michael Savisko
Add new glue callback dr_create_flow_action_send_to_kernel. Default callback invokes mlx5dv_dr_action_create_dest_root_table(). Signed-off-by: Michael Savisko --- drivers/common/mlx5/linux/mlx5_glue.c | 17 + drivers/common/mlx5/linux/mlx5_glue.h | 2 ++ 2 files changed, 19

[PATCH 01/10] common/mlx5: update meson build file

2022-09-20 Thread Michael Savisko
Define HAVE_MLX5DV_DR_ACTION_CREATE_DEST_ROOT_TABLE macro if function mlx5dv_dr_action_create_dest_root_table exists in infiniband/mlx5dv.h Signed-off-by: Michael Savisko --- drivers/common/mlx5/linux/meson.build | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/common/mlx5/linux

[PATCH 02/10] net/mlx5: disable send to kernel action in HW streering

2022-09-20 Thread Michael Savisko
Fail translation of RTE_FLOW_ACTION_TYPE_SEND_TO_KERNEL action in HW steering. Signed-off-by: Michael Savisko --- drivers/net/mlx5/mlx5_flow_hw.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c index 12498794a5..b168ff9e7e

[PATCH 00/10] net/mlx5: implement send to kernel action

2022-09-20 Thread Michael Savisko
This patchset provides mlx5 implementation of new rte_flow action RTE_FLOW_ACTION_TYPE_SEND_TO_KERNEL. Depends-on: series=24713 ("ethdev: add send to kernel action") Signed-off-by: Michael Savisko Michael Savisko (10): common/mlx5: update meson build file net/mlx5: disable send

[PATCH v3] ethdev: add send to kernel action

2022-09-19 Thread Michael Savisko
command: flow create 0 ingress priority 0 group 1 pattern eth type spec 0x0800 type mask 0x / end actions send_to_kernel / end Signed-off-by: Michael Savisko --- app/test-pmd/cmdline_flow.c | 9 + doc/guides/testpmd_app_ug/testpmd_funcs.rst | 2 ++ lib/et

[PATCH v2] ethdev: add send to kernel action

2022-09-14 Thread Michael Savisko
command: flow create 0 ingress priority 0 group 1 pattern eth type spec 0x0800 type mask 0x / end actions send_to_kernel / end Signed-off-by: Michael Savisko --- app/test-pmd/cmdline_flow.c | 9 + doc/guides/testpmd_app_ug/testpmd_funcs.rst | 2 ++ lib/et

RE: [RFC] ethdev: add send to kernel action

2022-09-13 Thread Michael Savisko
> -Original Message- > From: Andrew Rybchenko > Sent: Monday, 12 September 2022 17:41 > > On 9/12/22 16:39, Michael Savisko wrote: > >> -Original Message- > >> From: Thomas Monjalon > >> Sent: Monday, 12 September 2022 16:33 > >&

[PATCH 3/3] doc: update testpmd application guide

2022-09-12 Thread Michael Savisko
Add description of new rte_flow action 'send_to_kernel'. Signed-off-by: Michael Savisko --- doc/guides/testpmd_app_ug/testpmd_funcs.rst | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/guides/testpmd_app_ug/testpmd_funcs.rst b/doc/guides/testpmd_app_ug/testpmd_funcs

[PATCH 2/3] app/testpmd: add new action kernel

2022-09-12 Thread Michael Savisko
_to_kernel / end Signed-off-by: Michael Savisko --- 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/cmdl

[PATCH 1/3] ethdev: add send to kernel action

2022-09-12 Thread Michael Savisko
the HW. Signed-off-by: Michael Savisko --- lib/ethdev/rte_flow.c | 1 + lib/ethdev/rte_flow.h | 5 + 2 files changed, 6 insertions(+) diff --git a/lib/ethdev/rte_flow.c b/lib/ethdev/rte_flow.c index 501be9d602..627c671ce4 100644 --- a/lib/ethdev/rte_flow.c +++ b/lib/ethdev/rte_flow.c

[RFC] ethdev: add send to kernel action

2022-08-11 Thread Michael Savisko
the HW. Signed-off-by: Michael Savisko --- lib/librte_ethdev/rte_flow.h | 5 + 1 file changed, 5 insertions(+) diff --git a/lib/librte_ethdev/rte_flow.h b/lib/librte_ethdev/rte_flow.h index f92bef0184..969a607115 100644 --- a/lib/librte_ethdev/rte_flow.h +++ b/lib/librte_ethdev/rte_flow.h