[v1] net/mlx5: provide correct items to meter sub-policy
Checks
Commit Message
If meter policy action was RSS, the correct items were not provided
for sub-policy creation.
This fixes the issue by providing original items in meter split, so
the sub-policy creation gets the correct items.
Fixes: 3c481324baf3 ("net/mlx5: fix meter flow direction check")
Cc: stable@dpdk.org
Signed-off-by: Shun Hao <shunh@nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
---
drivers/net/mlx5/mlx5_flow.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
Comments
Hi,
> -----Original Message-----
> From: Shun Hao <shunh@nvidia.com>
> Sent: Friday, February 18, 2022 9:43 AM
> To: Matan Azrad <matan@nvidia.com>; Slava Ovsiienko
> <viacheslavo@nvidia.com>; orika@nvidia.com ; thomas@monjalon.net
> Cc: dev@dpdk.org ; Raslan Darawsheh <rasland@nvidia.com>;
> stable@dpdk.org
> Subject: [PATCH v1] net/mlx5: provide correct items to meter
> sub-policy
>
> If meter policy action was RSS, the correct items were not provided
> for sub- policy creation.
>
> This fixes the issue by providing original items in meter split, so
> the sub-policy creation gets the correct items.
>
> Fixes: 3c481324baf3 ("net/mlx5: fix meter flow direction check")
> Cc: stable@dpdk.org
>
> Signed-off-by: Shun Hao <shunh@nvidia.com>
> Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Patch applied to next-net-mlx,
Kindest regards,
Raslan Darawsheh
@@ -5022,6 +5022,7 @@ flow_meter_split_prep(struct rte_eth_dev *dev,
uint32_t tag_id = 0;
struct rte_flow_item *vlan_item_dst = NULL;
const struct rte_flow_item *vlan_item_src = NULL;
+ const struct rte_flow_item *orig_items = items;
struct rte_flow_action *hw_mtr_action;
struct rte_flow_action *action_pre_head = NULL;
int32_t flow_src_port = priv->representor_id;
@@ -5146,7 +5147,8 @@ flow_meter_split_prep(struct rte_eth_dev *dev,
if (!fm->def_policy) {
sub_policy = get_meter_sub_policy(dev, flow, wks,
- attr, items, error);
+ attr, orig_items,
+ error);
if (!sub_policy)
return -rte_errno;
} else {