lkml.org 
[lkml]   [2019]   [May]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.14 34/75] net/mlx5: E-Switch, Fix esw manager vport indication for more vport commands
    Date
    [ Upstream commit eca4a928585ac08147e5cc8e2111ecbc6279ee31 ]

    Traditionally, the PF (Physical Function) which resides on vport 0 was
    the E-switch manager. Since the ECPF (Embedded CPU Physical Function),
    which resides on vport 0xfffe, was introduced as the E-Switch manager,
    the assumption that the E-switch manager is on vport 0 is incorrect.

    Since the eswitch code already uses the actual vport value, all we
    need is to always set other_vport=1.

    Signed-off-by: Omri Kahalon <omrik@mellanox.com>
    Reviewed-by: Max Gurtovoy <maxg@mellanox.com>
    Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/net/ethernet/mellanox/mlx5/core/eswitch.c | 6 ++----
    1 file changed, 2 insertions(+), 4 deletions(-)

    diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
    index d2914116af8e..090d54275a7d 100644
    --- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
    +++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
    @@ -79,8 +79,7 @@ static int arm_vport_context_events_cmd(struct mlx5_core_dev *dev, u16 vport,
    opcode, MLX5_CMD_OP_MODIFY_NIC_VPORT_CONTEXT);
    MLX5_SET(modify_nic_vport_context_in, in, field_select.change_event, 1);
    MLX5_SET(modify_nic_vport_context_in, in, vport_number, vport);
    - if (vport)
    - MLX5_SET(modify_nic_vport_context_in, in, other_vport, 1);
    + MLX5_SET(modify_nic_vport_context_in, in, other_vport, 1);
    nic_vport_ctx = MLX5_ADDR_OF(modify_nic_vport_context_in,
    in, nic_vport_context);

    @@ -108,8 +107,7 @@ static int modify_esw_vport_context_cmd(struct mlx5_core_dev *dev, u16 vport,
    MLX5_SET(modify_esw_vport_context_in, in, opcode,
    MLX5_CMD_OP_MODIFY_ESW_VPORT_CONTEXT);
    MLX5_SET(modify_esw_vport_context_in, in, vport_number, vport);
    - if (vport)
    - MLX5_SET(modify_esw_vport_context_in, in, other_vport, 1);
    + MLX5_SET(modify_esw_vport_context_in, in, other_vport, 1);
    return mlx5_cmd_exec(dev, in, inlen, out, sizeof(out));
    }

    --
    2.20.1


    \
     
     \ /
      Last update: 2019-05-06 16:57    [W:9.192 / U:0.616 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site