Skip to contentSkip to conversation

net/mlx5: increase max pattern templates

PATCH In review Gregory Etelson 2 participants 2 messages Jul 1, 2024 – Jul 2, 2024 Network drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 net/mlx5: increase max pattern templates

From: Ori Kam <[email protected]>

Until now the number of pattern templates that was supported per table was limited to 2.
This was the result of the limitation that the table could only support 1 matcher.
which meant that we could only support merge of Ipv4 + TCP and IPv4 + UDP.

With the added ability to use extended hash it is now possible to use more than 2 pattern templates in a single table.

Extended match works by creating the hash of the rule based on the intersection of all pattern templates. As a result this is good for tables with small number of rules or that the intersection is very large. for example ACL table.

Using this feature is not recommended to for use in tables with large number of rules or with small intersection. Using this feature on such cases may result in PPS degradation and rule insertion failures.

This patch increase the max number to 32.

---
 drivers/net/mlx5/mlx5_flow.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/net/mlx5/mlx5_flow.h +1 -1
index 92e2ecedb3..8cef0bf61b 100644
@@ -1634,7 +1634,7 @@ struct mlx5_flow_group {
 };
 
 
-#define MLX5_HW_TBL_MAX_ITEM_TEMPLATE 2
+#define MLX5_HW_TBL_MAX_ITEM_TEMPLATE 32
 #define MLX5_HW_TBL_MAX_ACTION_TEMPLATE 32
 
 #define MLX5_MULTIPATTERN_ENCAP_NUM 5
Signature · 1 line
2.43.0
Acked-by Dariusz Sosnowski on v1 1/1
#1 lore raw

Hi,

From: Gregory Etelson <[email protected]>
Sent: Monday, July 1, 2024 1:26 PM
To: [email protected]
Cc: Gregory Etelson; Maayan Kashani; Raslan Darawsheh; Ori Kam; Dariusz Sosnowski; Slava Ovsiienko; Suanming Mou; Matan Azrad
Subject: [PATCH] net/mlx5: increase max pattern templates

From: Ori Kam <[email protected]>

Until now the number of pattern templates that was supported per table was limited to 2.
This was the result of the limitation that the table could only support 1 matcher.
which meant that we could only support merge of Ipv4 + TCP and IPv4 + UDP.

With the added ability to use extended hash it is now possible to use more than 2 pattern templates in a single table.

Extended match works by creating the hash of the rule based on the intersection of all pattern templates. As a result this is good for tables with small number of rules or that the intersection is very large. for example ACL table.

Using this feature is not recommended to for use in tables with large number of rules or with small intersection. Using this feature on such cases may result in PPS degradation and rule insertion failures.

This patch increase the max number to 32.

Patch applied to next-net-mlx,

Kindest regards,
Raslan Darawsheh