net/mlx5/hws: fix the valid bit of E-Switch owner
Checks
Commit Message
The 'eswitch_owner_vhca_id_valid' only depends on the
'merged_eswitch' capability. And it should be set for all
vport actions.
Fixes: ac8415cfe760 ("net/mlx5/hws: set E-Switch owner VHC ID valid")
Cc: erezsh@nvidia.com
Signed-off-by: Bing Zhao <bingz@nvidia.com>
Reviewed-by: Alex Vesker <valex@nvidia.com>
---
drivers/net/mlx5/hws/mlx5dr_action.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Comments
> -----Original Message-----
> From: Bing Zhao <bingz@nvidia.com>
> Sent: Monday, July 29, 2024 16:07
> To: Dariusz Sosnowski <dsosnowski@nvidia.com>; Slava Ovsiienko
> <viacheslavo@nvidia.com>; dev@dpdk.org; Raslan Darawsheh
> <rasland@nvidia.com>
> Cc: Ori Kam <orika@nvidia.com>; Suanming Mou <suanmingm@nvidia.com>;
> Matan Azrad <matan@nvidia.com>; Erez Shitrit <erezsh@nvidia.com>; Alex
> Vesker <valex@nvidia.com>
> Subject: [PATCH] net/mlx5/hws: fix the valid bit of E-Switch owner
>
> The 'eswitch_owner_vhca_id_valid' only depends on the 'merged_eswitch'
> capability. And it should be set for all vport actions.
>
> Fixes: ac8415cfe760 ("net/mlx5/hws: set E-Switch owner VHC ID valid")
> Cc: erezsh@nvidia.com
>
> Signed-off-by: Bing Zhao <bingz@nvidia.com>
> Reviewed-by: Alex Vesker <valex@nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
Best regards,
Dariusz Sosnowski
29/07/2024 17:54, Dariusz Sosnowski:
> >
> > The 'eswitch_owner_vhca_id_valid' only depends on the 'merged_eswitch'
> > capability. And it should be set for all vport actions.
> >
> > Fixes: ac8415cfe760 ("net/mlx5/hws: set E-Switch owner VHC ID valid")
> > Cc: erezsh@nvidia.com
> >
> > Signed-off-by: Bing Zhao <bingz@nvidia.com>
> > Reviewed-by: Alex Vesker <valex@nvidia.com>
>
> Acked-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
Applied, thanks.
@@ -826,7 +826,7 @@ mlx5dr_action_fixup_stc_attr(struct mlx5dr_context *ctx,
fixup_stc_attr->vport.vport_num = 0;
fixup_stc_attr->vport.esw_owner_vhca_id = stc_attr->vport.esw_owner_vhca_id;
fixup_stc_attr->vport.eswitch_owner_vhca_id_valid =
- ctx->caps->merged_eswitch;
+ stc_attr->vport.eswitch_owner_vhca_id_valid;
}
use_fixup = true;
break;
@@ -1057,6 +1057,7 @@ static void mlx5dr_action_fill_stc_attr(struct mlx5dr_action *action,
attr->action_type = MLX5_IFC_STC_ACTION_TYPE_JUMP_TO_VPORT;
attr->vport.vport_num = action->vport.vport_num;
attr->vport.esw_owner_vhca_id = action->vport.esw_owner_vhca_id;
+ attr->vport.eswitch_owner_vhca_id_valid = action->ctx->caps->merged_eswitch;
break;
case MLX5DR_ACTION_TYP_POP_VLAN:
attr->action_type = MLX5_IFC_STC_ACTION_TYPE_REMOVE_WORDS;