net/mlx5: DR, Fix matching on vport gvmi
Set vport gvmi in the tag, only when source gvmi is set in the bit mask. Fixes: 26d688e3 ("net/mlx5: DR, Add Steering entry (STE) utilities") Signed-off-by: Hamdan Igbaria <hamdani@mellanox.com> Reviewed-by: Alex Vesker <valex@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
This commit is contained in:
parent
1ad6c43c6a
commit
52d214976d
@ -2307,7 +2307,9 @@ static int dr_ste_build_src_gvmi_qpn_tag(struct mlx5dr_match_param *value,
|
||||
struct mlx5dr_cmd_vport_cap *vport_cap;
|
||||
struct mlx5dr_domain *dmn = sb->dmn;
|
||||
struct mlx5dr_cmd_caps *caps;
|
||||
u8 *bit_mask = sb->bit_mask;
|
||||
u8 *tag = hw_ste->tag;
|
||||
bool source_gvmi_set;
|
||||
|
||||
DR_STE_SET_TAG(src_gvmi_qp, tag, source_qp, misc, source_sqn);
|
||||
|
||||
@ -2328,7 +2330,8 @@ static int dr_ste_build_src_gvmi_qpn_tag(struct mlx5dr_match_param *value,
|
||||
if (!vport_cap)
|
||||
return -EINVAL;
|
||||
|
||||
if (vport_cap->vport_gvmi)
|
||||
source_gvmi_set = MLX5_GET(ste_src_gvmi_qp, bit_mask, source_gvmi);
|
||||
if (vport_cap->vport_gvmi && source_gvmi_set)
|
||||
MLX5_SET(ste_src_gvmi_qp, tag, source_gvmi, vport_cap->vport_gvmi);
|
||||
|
||||
misc->source_eswitch_owner_vhca_id = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user