[PATCH] ethdev: fix GENEVE option item conversion

2024-07-15 Thread Michael Baum
Fixes: 2b4c72b4d10d ("ethdev: introduce GENEVE header TLV option item") Cc: sta...@dpdk.org Signed-off-by: Michael Baum --- lib/ethdev/rte_flow.c | 29 + 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/lib/ethdev/rte_flow.c b/lib/ethdev/rte_flow.

[RFC 2/2] ethdev: add data size field to GENEVE option item

2024-04-17 Thread Michael Baum
tem_geneve_opt" structure in addition to existing "option_len" field. Signed-off-by: Michael Baum --- app/test-pmd/cmdline_flow.c | 10 ++ doc/guides/prog_guide/rte_flow.rst | 16 + doc/guides/testpmd_app_ug/testpmd_funcs.rst | 3 +- lib/ethd

[RFC 1/2] ethdev: fix GENEVE option item conversion

2024-04-17 Thread Michael Baum
Fixes: 2b4c72b4d10d ("ethdev: introduce GENEVE header TLV option item") Cc: shi...@nvidia.com Signed-off-by: Michael Baum --- lib/ethdev/rte_flow.c | 29 + 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/lib/ethdev/rte_flow.c b/lib/ethd

[RFC 0/2] ethdev: update GENEVE option item structure

2024-04-17 Thread Michael Baum
s item in "rte_flow.rst" file and update the data type to "rte_be32_t". [1] https://datatracker.ietf.org/doc/html/rfc8926 Michael Baum (2): ethdev: fix GENEVE option item conversion ethdev: add data size field to GENEVE option item app/test-pmd/cmdline_flow.c

[PATCH 2/4] net/mlx5/hws: fix GENEVE option class partial mask

2024-04-16 Thread Michael Baum
template creation is failed for mask != 0x regardless to class mode. This patch fixes this validation to be only when class mode is fixed. Fixes: 8f8dad4289e0 ("net/mlx5/hws: support GENEVE options matching") Cc: va...@nvidia.com Cc: sta...@dpdk.org Signed-off-by: Michael

[PATCH 4/4] net/mlx5/hws: remove table type DONTCARE

2024-04-16 Thread Michael Baum
This patch removes the "MLX5DR_TABLE_TYPE_DONTCARE" enum value and use the correct type instead even for places the type is "don't care". Signed-off-by: Michael Baum Reviewed-by: Alex Vesker Acked-by: Dariusz Sosnowski --- drivers/net/mlx5/hws/mlx5dr.h |

[PATCH 1/4] net/mlx5: fix secondary process port close

2024-04-16 Thread Michael Baum
tween processes causing a crash for secondary. This patch avoids this access and print warning in this case. Fixes: f5177bdc8b76 ("net/mlx5: add GENEVE TLV options parser API") Cc: michae...@nvidia.com Cc: sta...@dpdk.org Signed-off-by: Michael Baum Acked-by: Viacheslav Ovsiienko

[PATCH 0/4] net/mlx5: some unrelated fixes and improvements

2024-04-16 Thread Michael Baum
This patch-set groups some unrelated fixes and improvements in MLX5 PMD code. Michael Baum (4): net/mlx5: fix secondary process port close net/mlx5/hws: fix GENEVE option class partial mask net/mlx5/hws: add fragment packet ID matching support net/mlx5/hws: remove table type DONTCARE

[PATCH 3/4] net/mlx5/hws: add fragment packet ID matching support

2024-04-16 Thread Michael Baum
Add HWS support of IPv4 fragment packet id field matching. Signed-off-by: Michael Baum Reviewed-by: Alex Vesker Acked-by: Matan Azrad --- drivers/net/mlx5/hws/mlx5dr_definer.c | 11 ++- drivers/net/mlx5/hws/mlx5dr_definer.h | 2 ++ 2 files changed, 12 insertions(+), 1 deletion

[PATCH] compress/mlx5: add VF device ID

2024-04-07 Thread Michael Baum
This adds the Virtual Function device ID to the list of supported NVIDIA devices that run the MLX5 compress PMD. Signed-off-by: Michael Baum Acked-by: Matan Azrad --- drivers/compress/mlx5/mlx5_compress.c | 4 1 file changed, 4 insertions(+) diff --git a/drivers/compress/mlx5

[PATCH] net/mlx5/hws: add fragment packet ID matching support

2024-04-07 Thread Michael Baum
Add HWS support of IPv4 fragment packet id field matching. Signed-off-by: Michael Baum Reviewed-by: Alex Vesker Acked-by: Matan Azrad --- drivers/net/mlx5/hws/mlx5dr_definer.c | 11 ++- drivers/net/mlx5/hws/mlx5dr_definer.h | 2 ++ 2 files changed, 12 insertions(+), 1 deletion

[PATCH v2] net/mlx5: add HWS support for matching ingress metadata

2024-02-29 Thread Michael Baum
Add support for matching metadata in HWS ingress rules. It using REG_B matching which is supported for each device supports HWS. Signed-off-by: Michael Baum --- v2: - Rebase. - Fix compilation issue. - Update documentation. doc/guides/nics/mlx5.rst | 3 +- drivers/net/mlx5

[PATCH] net/mlx5/hws: enable multiple integrity items

2024-02-28 Thread Michael Baum
ing values, when "oks1" is submitted, operator "or" is used instead of regular set. Fixes: c55c2bf35333 ("net/mlx5/hws: add definer layer") Cc: va...@nvidia.com Cc: sta...@dpdk.org Signed-off-by: Michael Baum Reviewed-by: Erez Shitrit Acked-by: Matan Azrad --- d

[PATCH] net/mlx5: add HWS support for matching ingress metadata

2024-02-28 Thread Michael Baum
Add support for matching metadata in HWS ingress rules. It using REG_B matching which is supported for each device supports HWS. Signed-off-by: Michael Baum Reviewed-by: Erez Shitrit --- drivers/net/mlx5/hws/mlx5dr.h | 1 + drivers/net/mlx5/hws/mlx5dr_definer.c | 32

[PATCH v3 7/7] net/mlx5: support modify IPv6 flow label field

2024-02-26 Thread Michael Baum
Add HW steering support for IPv6 flow label field modification. Copy from inner IPv6 flow label field is also supported using "level=2". Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c

[PATCH v3 5/7] net/mlx5: add support for modify inner fields

2024-02-26 Thread Michael Baum
This patch adds support for copying from inner fields using "level" 2. Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- doc/guides/nics/mlx5.rst | 28 +- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow.c | 12 ++- d

[PATCH v3 6/7] net/mlx5: support modify IPv6 traffic class field

2024-02-26 Thread Michael Baum
Add HW steering support for IPv6 traffic class field modification. Copy from inner IPv6 traffic class field is also supported using "level=2". Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c

[PATCH v3 4/7] common/mlx5: add IPv6 flow label PRM field

2024-02-26 Thread Michael Baum
Add IPv6 flow label field into PRM modify field list. The new values are "MLX5_MODI_OUT_IPV6_FLOW_LABEL" and "MLX5_MODI_IN_IPV6_FLOW_LABEL". Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- drivers/common/mlx5/mlx5_prm.h | 2 ++ 1 file changed, 2 insertions(+)

[PATCH v3 2/7] common/mlx5: reorder modification field PRM list

2024-02-26 Thread Michael Baum
Reorder modification field PRM list according to values from lowest to highest. This patch also removes value specification from all fields which their value is one more than previous one. Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- drivers/common/mlx5/mlx5_prm.h | 32

[PATCH v3 3/7] common/mlx5: add inner PRM fields

2024-02-26 Thread Michael Baum
This patch adds inner values into PRM modify field list for each existing outer field. Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- drivers/common/mlx5/mlx5_prm.h | 14 +++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/drivers/common/mlx5/mlx5_prm.h b

[PATCH v3 1/7] common/mlx5: remove enum value duplication

2024-02-26 Thread Michael Baum
R" and replaces all its usages with "MLX5_MODI_OUT_IP_PROTOCOL". Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- drivers/common/mlx5/mlx5_prm.h| 1 - drivers/net/mlx5/hws/mlx5dr_action.c | 4 ++-- drivers/net/mlx5/hws/mlx5dr_pat_arg.c | 2 +- 3 files changed, 3 i

[PATCH v3 0/7] net/mlx5: support copy from inner fields

2024-02-26 Thread Michael Baum
notes. v3: - Rebase. - Add "Acked-by" from v2. - Remove the "Depends-on" labels. Michael Baum (7): common/mlx5: remove enum value duplication common/mlx5: reorder modification field PRM list common/mlx5: add inner PRM fields common/mlx5: add IPv6 flow label PRM fie

[PATCH v7 0/3] net/mlx5: add compare item support

2024-02-26 Thread Michael Baum
- Rebase. - Add ESP sequence number suppoert and rename the series accordingly. v6: - Rebase. - Add "Acked-by" from v5. v7: - Rebase. Hamdan Igbaria (1): net/mlx5/hws: add support for compare matcher Michael Baum (2): net/mlx5: add support to compare random value net/mlx5/

[PATCH v7 3/3] net/mlx5/hws: add compare ESP sequence number support

2024-02-26 Thread Michael Baum
Add support for compare item with "RTE_FLOW_FIELD_ESP_SEQ_NUM" field. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/guides/nics/mlx5.rst | 1 + drivers/net/mlx5/hws/mlx5dr_definer.c | 22 -- drivers/net/mlx5/mlx5_flow_hw.c | 3 ++

[PATCH v7 2/3] net/mlx5: add support to compare random value

2024-02-26 Thread Michael Baum
Add support to use "RTE_FLOW_ITEM_TYPE_COMPARE" with "RTE_FLOW_FIELD_RAMDOM" as an argument. The random field is supported only when base is an immediate value, random field cannot be compared with enother field. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/

[PATCH v7 1/3] net/mlx5/hws: add support for compare matcher

2024-02-26 Thread Michael Baum
Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx5dr_debug.c | 4 +- drivers/net/mlx5/hws/mlx5dr_debug.h | 1

[PATCH v6 0/3] net/mlx5: add compare item support

2024-02-26 Thread Michael Baum
- Rebase. - Add ESP sequence number suppoert and rename the series accordingly. v6: - Rebase. - Add "Acked-by" from v5. Hamdan Igbaria (1): net/mlx5/hws: add support for compare matcher Michael Baum (2): net/mlx5: add support to compare random value net/mlx5/hws: add compare ES

[PATCH v6 3/3] net/mlx5/hws: add compare ESP sequence number support

2024-02-26 Thread Michael Baum
Add support for compare item with "RTE_FLOW_FIELD_ESP_SEQ_NUM" field. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/guides/nics/mlx5.rst | 1 + drivers/net/mlx5/hws/mlx5dr_definer.c | 22 -- drivers/net/mlx5/mlx5_flow_hw.c | 3 ++

[PATCH v6 2/3] net/mlx5: add support to compare random value

2024-02-26 Thread Michael Baum
Add support to use "RTE_FLOW_ITEM_TYPE_COMPARE" with "RTE_FLOW_FIELD_RAMDOM" as an argument. The random field is supported only when base is an immediate value, random field cannot be compared with enother field. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/

[PATCH v6 1/3] net/mlx5/hws: add support for compare matcher

2024-02-26 Thread Michael Baum
Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx5dr_debug.c | 4 +- drivers/net/mlx5/hws/mlx5dr_debug.h | 1

RE: [PATCH v5 3/3] net/mlx5/hws: add compare ESP sequence number support

2024-02-18 Thread Michael Baum
Hi, > -Original Message- > From: Suanming Mou > Sent: Monday, 19 February 2024 5:00 > To: Michael Baum ; dev@dpdk.org > Cc: Matan Azrad ; Dariusz Sosnowski > ; Raslan Darawsheh ; Slava > Ovsiienko ; Ori Kam > Subject: RE: [PATCH v5 3/3] net/mlx5/hws: add compa

[PATCH v5 3/3] net/mlx5/hws: add compare ESP sequence number support

2024-02-13 Thread Michael Baum
Add support for compare item with "RTE_FLOW_FIELD_ESP_SEQ_NUM" field. Signed-off-by: Michael Baum --- doc/guides/nics/mlx5.rst | 1 + drivers/net/mlx5/hws/mlx5dr_definer.c | 22 -- drivers/net/mlx5/mlx5_flow_hw.c | 3 +++ 3 files changed, 24

[PATCH v5 2/3] net/mlx5: add support to compare random value

2024-02-13 Thread Michael Baum
Add support to use "RTE_FLOW_ITEM_TYPE_COMPARE" with "RTE_FLOW_FIELD_RAMDOM" as an argument. The random field is supported only when base is an immediate value, random field cannot be compared with enother field. Signed-off-by: Michael Baum --- doc/guides/nics/

[PATCH v5 1/3] net/mlx5/hws: add support for compare matcher

2024-02-13 Thread Michael Baum
Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx5dr_debug.c | 4 +- drivers/net/mlx5/hws/mlx5dr_debug.h | 1 + drivers/net/mlx5/hws

[PATCH v5 0/3] net/mlx5: add compare item support

2024-02-13 Thread Michael Baum
- Rebase. - Add ESP sequence number suppoert and rename the series accordingly. Hamdan Igbaria (1): net/mlx5/hws: add support for compare matcher Michael Baum (2): net/mlx5: add support to compare random value net/mlx5/hws: add compare ESP sequence number support doc/guides/nics/mlx5.rst

RE: [PATCH v2 1/1] ethdev: add IPv6 FL and TC field identifiers

2024-02-11 Thread Michael Baum
On 2/9/2024 3:51 PM, Ferruh Yigit wrote: > > On 2/8/2024 22:38 PM, Michael Baum wrote: > > Add new "rte_flow_field_id" enumeration values to describe both IPv6 > > traffic class and IPv6 flow label fields. > > > > The TC value is "RTE_F

[PATCH] net/mlx5/hws: add compare ESP sequence number support

2024-02-07 Thread Michael Baum
Add support for compare item with "RTE_FLOW_FIELD_ESP_SEQ_NUM" field. Signed-off-by: Michael Baum --- Depends-on: series-31008 ("ethdev: add modify IPv4 next protocol field") Depends-on: series-31041 ("net/mlx5: add random compare support") doc/guides/n

[PATCH v4 2/2] net/mlx5: add support to compare random value

2024-02-07 Thread Michael Baum
Add support to use "RTE_FLOW_ITEM_TYPE_COMPARE" with "RTE_FLOW_FIELD_RAMDOM" as an argument. The random field is supported only when base is an immediate value, random field cannot be compared with enother field. Signed-off-by: Michael Baum --- doc/guides/nics/

[PATCH v4 1/2] net/mlx5/hws: add support for compare matcher

2024-02-07 Thread Michael Baum
Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx5dr_debug.c | 4 +- drivers/net/mlx5/hws/mlx5dr_debug.h | 1 + drivers/net/mlx5/hws

[PATCH v4 0/2] net/mlx5: add random compare support

2024-02-07 Thread Michael Baum
at end of file. v4: - Rebase. - Update documentation. - Remove the "Depends-on" label. Hamdan Igbaria (1): net/mlx5/hws: add support for compare matcher Michael Baum (1): net/mlx5: add support to compare random value doc/guides/nics/mlx5.rst | 9 +- drivers/common/mlx5

[PATCH v2 7/7] net/mlx5: support modify IPv6 flow label field

2024-02-07 Thread Michael Baum
Add HW steering support for IPv6 flow label field modification. Copy from inner IPv6 flow label field is also supported using "level=2". Signed-off-by: Michael Baum --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c| 12 driver

[PATCH v2 6/7] net/mlx5: support modify IPv6 traffic class field

2024-02-07 Thread Michael Baum
Add HW steering support for IPv6 traffic class field modification. Copy from inner IPv6 traffic class field is also supported using "level=2". Signed-off-by: Michael Baum --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c| 11 +++ driver

[PATCH v2 5/7] net/mlx5: add support for modify inner fields

2024-02-07 Thread Michael Baum
This patch adds support for copying from inner fields using "level" 2. Signed-off-by: Michael Baum --- doc/guides/nics/mlx5.rst | 28 +- doc/guides/rel_notes/release_24_03.rst | 2 + drivers/net/mlx5/mlx5_flow.c | 12 ++- drivers/net/mlx5/mlx5

[PATCH v2 3/7] common/mlx5: add inner PRM fields

2024-02-07 Thread Michael Baum
This patch adds inner values into PRM modify field list for each existing outer field. Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h | 14 +++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5

[PATCH v2 4/7] common/mlx5: add IPv6 flow label PRM field

2024-02-07 Thread Michael Baum
Add IPv6 flow label field into PRM modify field list. The new values are "MLX5_MODI_OUT_IPV6_FLOW_LABEL" and "MLX5_MODI_IN_IPV6_FLOW_LABEL". Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/comm

[PATCH v2 1/7] common/mlx5: remove enum value duplication

2024-02-07 Thread Michael Baum
R" and replaces all its usages with "MLX5_MODI_OUT_IP_PROTOCOL". Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h| 1 - drivers/net/mlx5/hws/mlx5dr_action.c | 4 ++-- drivers/net/mlx5/hws/mlx5dr_pat_arg.c | 2 +- 3 files changed, 3 insertions(+), 4 deletions

[PATCH v2 0/7] net/mlx5: support copy from inner fields

2024-02-07 Thread Michael Baum
next protocol field") Depends-on: series-31010 ("ethdev: add IPv6 field identifiers") v2: - Rebase. - Add "copy from inner" to release notes. Michael Baum (7): common/mlx5: remove enum value duplication common/mlx5: reorder modification field PRM list common/mlx5: add

[PATCH v2 2/7] common/mlx5: reorder modification field PRM list

2024-02-07 Thread Michael Baum
Reorder modification field PRM list according to values from lowest to highest. This patch also removes value specification from all fields which their value is one more than previous one. Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h | 32 1

[PATCH v2 1/1] ethdev: add IPv6 FL and TC field identifiers

2024-02-07 Thread Michael Baum
LD_IPV6_FLOW_LABEL" in flow API and "ipv6_flow_label" in testpmd command. Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- app/test-pmd/cmdline_flow.c| 1 + doc/guides/rel_notes/release_24_03.rst | 2 ++ lib/ethdev/rte_flow.h | 4 +++- 3 files changed

[PATCH v2 0/1] ethdev: add IPv6 field identifiers

2024-02-07 Thread Michael Baum
Add new field identifiers for IPv6 traffic class and flow label. Depends-on: series-31008 ("ethdev: add modify IPv4 next protocol field") v2: - Rebase. - Add "Acked-by" label from v1. Michael Baum (1): ethdev: add IPv6 FL and TC field identifiers app/test-pmd/cmdline_f

[PATCH v1 7/7] net/mlx5: support modify IPv6 flow label field

2024-02-06 Thread Michael Baum
Add HW steering support for IPv6 flow label field modification. Copy from inner IPv6 flow label field is also supported using "level=2". Signed-off-by: Michael Baum --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c| 12 driver

[PATCH v1 6/7] net/mlx5: support modify IPv6 traffic class field

2024-02-06 Thread Michael Baum
Add HW steering support for IPv6 traffic class field modification. Copy from inner IPv6 traffic class field is also supported using "level=2". Signed-off-by: Michael Baum --- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c| 11 +++ driver

[PATCH v1 5/7] net/mlx5: add support for modify inner fields

2024-02-06 Thread Michael Baum
This patch adds support for copying from inner fields using "level" 2. Signed-off-by: Michael Baum --- doc/guides/nics/mlx5.rst| 28 ++- drivers/net/mlx5/mlx5_flow.c| 12 ++- drivers/net/mlx5/mlx5_flow_dv.c | 113 ++- drivers/net/mlx5/mlx5

[PATCH v1 4/7] common/mlx5: add IPv6 flow label PRM field

2024-02-06 Thread Michael Baum
Add IPv6 flow label field into PRM modify field list. The new values are "MLX5_MODI_OUT_IPV6_FLOW_LABEL" and "MLX5_MODI_IN_IPV6_FLOW_LABEL". Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/comm

[PATCH v1 3/7] common/mlx5: add inner PRM fields

2024-02-06 Thread Michael Baum
This patch adds inner values into PRM modify field list for each existing outer field. Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h | 14 +++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5

[PATCH v1 1/7] common/mlx5: remove enum value duplication

2024-02-06 Thread Michael Baum
R" and replaces all its usages with "MLX5_MODI_OUT_IP_PROTOCOL". Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h| 1 - drivers/net/mlx5/hws/mlx5dr_action.c | 4 ++-- drivers/net/mlx5/hws/mlx5dr_pat_arg.c | 2 +- 3 files changed, 3 insertions(+), 4 deletions

[PATCH v1 0/7] net/mlx5: support copy from inner fields

2024-02-06 Thread Michael Baum
next protocol field") Depends-on: series-31010 ("ethdev: add IPv6 field identifiers") Michael Baum (7): common/mlx5: remove enum value duplication common/mlx5: reorder modification field PRM list common/mlx5: add inner PRM fields common/mlx5: add IPv6 flow label PRM field n

[PATCH v1 2/7] common/mlx5: reorder modification field PRM list

2024-02-06 Thread Michael Baum
Reorder modification field PRM list according to values from lowest to highest. This patch also removes value specification from all fields which their value is one more than previous one. Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h | 32 1

[PATCH 1/1] ethdev: add IPv6 FL and TC field identifiers

2024-02-06 Thread Michael Baum
LD_IPV6_FLOW_LABEL" in flow API and "ipv6_flow_label" in testpmd command. Signed-off-by: Michael Baum --- app/test-pmd/cmdline_flow.c| 1 + doc/guides/rel_notes/release_24_03.rst | 2 ++ lib/ethdev/rte_flow.h | 4 +++- 3 files changed, 6 insertions(+), 1 deletion(

[PATCH 0/1] ethdev: add IPv6 field identifiers

2024-02-06 Thread Michael Baum
Add new field identifiers for IPv6 traffic class and flow label. Depends-on: series-31008 ("ethdev: add modify IPv4 next protocol field") Michael Baum (1): ethdev: add IPv6 FL and TC field identifiers app/test-pmd/cmdline_flow.c| 1 + doc/guides/rel_notes/release_24_

[PATCH v3 2/2] net/mlx5: add support to compare random value

2024-01-29 Thread Michael Baum
Add support to use "RTE_FLOW_ITEM_TYPE_COMPARE" with "RTE_FLOW_FIELD_RAMDOM" as an argument. The random field is supported only when base is an immediate value, random field cannot be compared with enother field. Signed-off-by: Michael Baum --- drivers/net/mlx5

[PATCH v3 1/2] net/mlx5/hws: add support for compare matcher

2024-01-29 Thread Michael Baum
Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx5dr_debug.c | 4 +- drivers/net/mlx5/hws/mlx5dr_debug.h | 1 + drivers/net/mlx5/hws

[PATCH v3 0/2] net/mlx5: add random compare support

2024-01-29 Thread Michael Baum
ction name, r/tranlate/translate. - Fix adding a line without newline at end of file. Hamdan Igbaria (1): net/mlx5/hws: add support for compare matcher Michael Baum (1): net/mlx5: add support to compare random value drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_

[PATCH v2 2/2] net/mlx5: add support to compare random value

2024-01-28 Thread Michael Baum
Add support to use "RTE_FLOW_ITEM_TYPE_COMPARE" with "RTE_FLOW_FIELD_RAMDOM" as an argument. The random field is supported only when base is an immediate value, random field cannot be compared with enother field. Signed-off-by: Michael Baum --- drivers/net/mlx5

[PATCH v2 1/2] net/mlx5/hws: add support for compare matcher

2024-01-28 Thread Michael Baum
Signed-off-by: Michael Baum --- drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx5dr_debug.c | 4 +- drivers/net/mlx5/hws/mlx5dr_debug.h | 1 + drivers/net/mlx5/hws

[PATCH v2 0/2] net/mlx5: add random compare support

2024-01-28 Thread Michael Baum
lx5/hws: add support for compare matcher Michael Baum (1): net/mlx5: add support to compare random value drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx5dr_debug.c | 4 +- dri

[PATCH v2 23/23] net/mlx5: add support for modify GENEVE option header

2024-01-25 Thread Michael Baum
Add support for GENEVE option fields modification. Only fields configured in parser creation can be modified. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/guides/nics/mlx5.rst | 4 + doc/guides/rel_notes/release_24_03.rst | 3 + drivers/net/mlx5/mlx5_flow.h

[PATCH v2 19/23] net/mlx5: add support for GENEVE and option item in HWS

2024-01-25 Thread Michael Baum
Add HW steering support for both "RTE_FLOW_ITEM_TYPE_GENEVE" and "RTE_FLOW_ITEM_TYPE_GENEVE_OPT". Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/guides/nics/mlx5.rst | 15 ++- doc/guides/rel_notes/release_24_03.rst | 5 + drivers/

[PATCH v2 20/23] net/mlx5: add GENEVE option support for profile 0

2024-01-25 Thread Michael Baum
Add support for matching and modifying GENEVE option for FLEX_PARSER_PROFILE_ENABLE=0. Before this patch it is supported when FLEX_PARSER_PROFILE_ENABLE=8 in HW steering and when FLEX_PARSER_PROFILE_ENABLE=0 in SW steering. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/guides/nics

[PATCH v2 18/23] net/mlx5/hws: support GENEVE options header

2024-01-25 Thread Michael Baum
From: Alex Vesker Add support for matching multiple GENEVE options. Options header introduces new complexities since there can be more than one GENEVE option. This requires us to track the total DWs used for matching. Current code supports 8DWs for data including type, class, length. There is als

[PATCH v2 22/23] net/mlx5: add support for GENEVE VNI modify field

2024-01-25 Thread Michael Baum
Add support for GENEVE VNI field modification. The support is only using HW steering. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/guides/nics/mlx5.rst | 6 +- doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c| 4

[PATCH v2 21/23] net/mlx5: add GENEVE option support for group 0

2024-01-25 Thread Michael Baum
After this change, those functions became static and they were removed from header file. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/net/mlx5/mlx5.c | 8 +--- drivers/net/mlx5/mlx5_flow.h| 4 drivers/net/mlx5/mlx5_flow_dv.c | 24 +++- 3 fil

[PATCH v2 17/23] net/mlx5/hws: support GENEVE matching

2024-01-25 Thread Michael Baum
From: Alex Vesker Add matching for GENEVE tunnel header. Signed-off-by: Alex Vesker Acked-by: Suanming Mou --- drivers/net/mlx5/hws/mlx5dr_definer.c | 91 +++ drivers/net/mlx5/hws/mlx5dr_definer.h | 19 ++ 2 files changed, 110 insertions(+) diff --git a/drivers/ne

[PATCH v2 13/23] net/mlx5: add GENEVE TLV options parser API

2024-01-25 Thread Michael Baum
Add a new private API to create/destroy parser for GENEVE TLV options. Signed-off-by: Michael Baum Signed-off-by: Viacheslav Ovsiienko Acked-by: Suanming Mou --- doc/guides/nics/mlx5.rst| 122 ++ doc/guides/platform/mlx5.rst| 6 +- drivers/net/mlx5/meson.build

[PATCH v2 16/23] net/mlx5/hws: increase hl size for future compatibility

2024-01-25 Thread Michael Baum
From: Alex Vesker In some cases we rely on header layout DW offset from FW caps, this is done in case of future HW which may support current flex fields natively, for this we must increase header layout to 255 DWs, which is the limit in current definer creation. Signed-off-by: Alex Vesker Acked

[PATCH v2 15/23] net/mlx5: add testpmd support for GENEVE TLV parser

2024-01-25 Thread Michael Baum
ENEVE TLV parser for specific port using option list which are set so far: testpmd> mlx5 port (port_id) apply tlv_options 5. Destroy GENEVE TLV parser for specific port: testpmd> mlx5 port (port_id) destroy tlv_options Signed-off-by: Michael Baum Acked-by: Suanming Mou --- doc/guide

[PATCH v2 14/23] net/mlx5: add API to expose GENEVE option FW information

2024-01-25 Thread Michael Baum
Add a new API to expose GENEVE option FW information to DR layer. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/net/mlx5/mlx5_flow.h| 28 + drivers/net/mlx5/mlx5_flow_geneve.c | 94 + 2 files changed, 122 insertions(+) diff --git a

[PATCH v2 12/23] net/mlx5: add physical device handle

2024-01-25 Thread Michael Baum
Add structure describing physical device, and manage physical device global list. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/net/mlx5/mlx5.c | 77 - drivers/net/mlx5/mlx5.h | 13 +++ 2 files changed, 82 insertions(+), 8 deletions

[PATCH v2 11/23] common/mlx5: add function to query GENEVE TLV option

2024-01-25 Thread Michael Baum
Add a new function to query information about GENEVE TLV option parser. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_devx_cmds.c | 50 drivers/common/mlx5/mlx5_devx_cmds.h | 6 drivers/common/mlx5/mlx5_prm.h | 5

[PATCH v2 10/23] common/mlx5: query GENEVE option sample ID from HCA attr

2024-01-25 Thread Michael Baum
This patch adds the GENEVE option sample ID into HCA attribute structure. This sample ID is used as the input of "mlx5_devx_cmd_match_sample_info_query" function when flex parser profile is 0. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_devx_

[PATCH v2 09/23] common/mlx5: add sample info query syndrome into error log

2024-01-25 Thread Michael Baum
Move "mlx5_devx_cmd_match_sample_info_query()" function to use "DEVX_DRV_LOG" in case of "devx_general_cmd" failure. This macro contains syndrome report and used by all other function calling "devx_general_cmd". Signed-off-by: Michael Baum Acked-by

[PATCH v2 08/23] common/mlx5: add PRM attribute for TLV sample

2024-01-25 Thread Michael Baum
Add GENEVE TLV sample fields in 2 places: 1. New HCA capabilities indicating GENEVE TLV sample is supported. 2. New fields in "mlx5_ifc_geneve_tlv_option_bits" structure. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_devx_c

[PATCH v2 07/23] common/mlx5: add GENEVE TLV option attribute structure

2024-01-25 Thread Michael Baum
Add a new structure "mlx5_devx_geneve_tlv_option_attr" to use in GENEVE TLV option creation. Later this structure will be used by GENEVE TLV option query operation as well. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_devx_c

[PATCH v2 06/23] common/mlx5: add system image GUID attribute

2024-01-25 Thread Michael Baum
Add to the "system_image_guid" filed describing uniquely the physical device into "mlx5_hca_attr" structure. Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_devx_cmds.c | 10 ++ drivers/common/mlx5/mlx5_devx_cmds.h | 1 + 2 files c

[PATCH v2 04/23] net/mlx5: remove GENEVE options length limitation

2024-01-25 Thread Michael Baum
ly. Fixes: e440d6cf589e ("net/mlx5: add GENEVE TLV option flow translation") Cc: shi...@nvidia.com Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/net/mlx5/mlx5_flow_dv.c | 16 1 file changed, 16 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow_dv.c

[PATCH v2 05/23] net/mlx5: fix GENEVE option item translation

2024-01-25 Thread Michael Baum
implementation to avoid those issues. Fixes: cd4ab742064a ("net/mlx5: split flow item matcher and value translation") Cc: suanmi...@nvidia.com Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/net/mlx5/mlx5_flow_dv.c | 28 +++- 1 file changed, 11 insert

[PATCH v2 03/23] net/mlx5/hws: fix tunnel protocol checks

2024-01-25 Thread Michael Baum
From: Alex Vesker Align GRE, GTPU and VXLAN tunnel protocols to fail in case the packet is already tunneled. Also use local defines for protocol UDP ports for better layering of mlx5dr API. Fixes: c55c2bf35333 ("net/mlx5/hws: add definer layer") Fixes: 5bf14a4beb1a ("net/mlx5/hws: support matchi

[PATCH v2 02/23] common/mlx5: fix query sample info capability

2024-01-25 Thread Michael Baum
unnecessary requirement for Geneve TLV option. This patch adds different cap for Geneve TLV option. Fixes: bc0a9303ed6a ("net/mlx5: adopt new sample ID") Cc: rongw...@nvidia.com Cc: sta...@dpdk.org Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_devx_

[PATCH v2 01/23] common/mlx5: fix duplicate read of general capabilities

2024-01-25 Thread Michael Baum
duplications. Fixes: 876d4702b141 ("common/mlx5: optimize read of general capabilities") Cc: dek...@nvidia.com Cc: sta...@dpdk.org Signed-off-by: Michael Baum Acked-by: Suanming Mou --- drivers/common/mlx5/mlx5_devx_cmds.c | 18 -- 1 file changed, 4 insertions(+), 14 deletion

[PATCH v2 00/23] net/mlx5: support Geneve and options for HWS

2024-01-25 Thread Michael Baum
v1. Alex Vesker (4): net/mlx5/hws: fix tunnel protocol checks net/mlx5/hws: increase hl size for future compatibility net/mlx5/hws: support GENEVE matching net/mlx5/hws: support GENEVE options header Michael Baum (19): common/mlx5: fix duplicate read of general capabilities common/ml

[PATCH v5 2/2] net/mlx5: add random item support

2024-01-25 Thread Michael Baum
Add support for random item in HWS mode. Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- doc/guides/nics/features/mlx5.ini | 1 + doc/guides/nics/mlx5.rst | 9 + doc/guides/rel_notes/release_24_03.rst | 1 + drivers/net/mlx5/mlx5_flow_dv.c| 5

[PATCH v5 1/2] net/mlx5/hws: add support for random number match

2024-01-25 Thread Michael Baum
From: Erez Shitrit The HW adds a random number per each hash, this value can be used for statistic calculation over the packets, for example by setting one bit in the mask of that field we will get half of the traffic in the flow, and so on with the rest of the mask. Signed-off-by: Erez Shitrit

[PATCH v5 0/2] net/mlx5: add random item support

2024-01-25 Thread Michael Baum
W_ITEM_NSH" and "MLX5_FLOW_ITEM_RANDOM". - Add "Acked-by" from v3. v5: - Rebase. - Remove "Depends-on" label. Erez Shitrit (1): net/mlx5/hws: add support for random number match Michael Baum (1): net/mlx5: add random item support doc/guides/nics/featu

[PATCH] net/mlx5: fix GENEVE TLV option management

2024-01-15 Thread Michael Baum
shi...@nvidia.com Cc: sta...@dpdk.org Signed-off-by: Michael Baum Acked-by: Matan Azrad --- drivers/net/mlx5/mlx5_flow_dv.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c index 97f55003c3..7cc1729145

[PATCH] net/mlx5/hws: fix ESP matching validation

2024-01-15 Thread Michael Baum
n when this flag is off. This patch removes this validation. Fixes: 81cf20a25abf ("net/mlx5/hws: support match on ESP item") Cc: hamd...@nvidia.com Cc: sta...@dpdk.org Signed-off-by: Michael Baum Acked-by: Hamdan Igbaria Acked-by: Matan Azrad --- drivers/net/mlx5/hws/mlx5dr_definer.

[PATCH v1 1/2] net/mlx5/hws: add support for compare matcher

2023-12-25 Thread Michael Baum
From: Hamdan Igbaria Add support for compare matcher, this matcher will allow direct comparison between two packet fields, or a packet field and a value, with fully masked DW. For now this matcher hash table is limited to size 1x1, thus it supports only 1 rule STE. Signed-off-by: Hamdan Igbaria

[PATCH v1 0/2] net/mlx5: add random compare support

2023-12-25 Thread Michael Baum
Hamdan Igbaria (1): net/mlx5/hws: add support for compare matcher Michael Baum (1): net/mlx5: add support to compare random value drivers/common/mlx5/mlx5_prm.h| 16 ++ drivers/net/mlx5/hws/mlx5dr_cmd.c | 9 +- drivers/net/mlx5/hws/mlx5dr_cmd.h | 1 + drivers/net/mlx5/hws/mlx

[PATCH v1 2/2] net/mlx5: add support to compare random value

2023-12-25 Thread Michael Baum
Add support to use "RTE_FLOW_ITEM_TYPE_COMPARE" with "RTE_FLOW_FIELD_RAMDOM" as an argument. The random field is supported only when base is an immediate value, random field cannot be compared with enother field. Signed-off-by: Michael Baum --- drivers/net/mlx5

[PATCH v4 2/2] net/mlx5: add random item support

2023-12-25 Thread Michael Baum
Add support for random item in HWS mode. Signed-off-by: Michael Baum Acked-by: Dariusz Sosnowski --- doc/guides/nics/features/mlx5.ini | 1 + doc/guides/nics/mlx5.rst | 9 + doc/guides/rel_notes/release_24_03.rst | 3 +++ drivers/net/mlx5/mlx5_flow_dv.c| 5

[PATCH v4 1/2] net/mlx5/hws: add support for random number match

2023-12-25 Thread Michael Baum
From: Erez Shitrit The HW adds a random number per each hash, this value can be used for statistic calculation over the packets, for example by setting one bit in the mask of that field we will get half of the traffic in the flow, and so on with the rest of the mask. Signed-off-by: Erez Shitrit

  1   2   3   4   5   6   7   >