• Mark Zhang's avatar
    net/mlx5: Use reversed order when unregister devices · 08aa5e7d
    Mark Zhang authored
    When lag is active, which is controlled by the bonded mlx5e netdev, mlx5
    interface unregestering must happen in the reverse order where rdma is
    unregistered (unloaded) first, to guarantee all references to the lag
    context in hardware is removed, then remove mlx5e netdev interface which
    will cleanup the lag context from hardware.
    
    Without this fix during destroy of LAG interface, we observed following
    errors:
     * mlx5_cmd_check:752:(pid 12556): DESTROY_LAG(0x843) op_mod(0x0) failed,
       status bad parameter(0x3), syndrome (0xe4ac33)
     * mlx5_cmd_check:752:(pid 12556): DESTROY_LAG(0x843) op_mod(0x0) failed,
       status bad parameter(0x3), syndrome (0xa5aee8).
    
    Fixes: a31208b1 ("net/mlx5_core: New init and exit flow for mlx5_core")
    Reviewed-by: default avatarParav Pandit <parav@mellanox.com>
    Reviewed-by: default avatarLeon Romanovsky <leonro@mellanox.com>
    Signed-off-by: default avatarMark Zhang <markz@mellanox.com>
    Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
    08aa5e7d
dev.c 8.81 KB