net/mlx5: increase max pattern templates
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
@@ -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
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