]> git.baikalelectronics.ru Git - kernel.git/commit
net/mlx5: Use reversed order when unregister devices
authorMark Zhang <markz@mellanox.com>
Tue, 9 Jul 2019 02:37:12 +0000 (05:37 +0300)
committerSaeed Mahameed <saeedm@mellanox.com>
Thu, 25 Jul 2019 20:30:59 +0000 (13:30 -0700)
commita859af26fd01ecec244e46a075798248314d6ac0
treedecde36150f2bc6750000310b8b2327dad77b244
parent3946fc9291da929ed6836ab79a3b87c34d142954
net/mlx5: Use reversed order when unregister devices

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: d583916582d8 ("net/mlx5_core: New init and exit flow for mlx5_core")
Reviewed-by: Parav Pandit <parav@mellanox.com>
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Mark Zhang <markz@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
drivers/net/ethernet/mellanox/mlx5/core/dev.c