net/mlx5: Add Fast teardown support
Today mlx5 devices support two teardown modes: 1- Regular teardown 2- Force teardown This change introduces the enhanced version of the "Force teardown" that allows SW to perform teardown in a faster way without the need to reclaim all the pages. Fast teardown provides the following advantages: 1- Fix a FW race condition that could cause command timeout 2- Avoid moving to polling mode 3- Close the vport to prevent PCI ACK to be sent without been scatter to memory Signed-off-by: Feras Daoud <ferasda@mellanox.com> Reviewed-by: Majd Dibbiny <majd@mellanox.com> Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
This commit is contained in:

committed by
Saeed Mahameed

parent
94563847a8
commit
fcd29ad17c
@@ -896,7 +896,8 @@ struct mlx5_ifc_cmd_hca_cap_bits {
|
||||
u8 log_max_mkey[0x6];
|
||||
u8 reserved_at_f0[0x8];
|
||||
u8 dump_fill_mkey[0x1];
|
||||
u8 reserved_at_f9[0x3];
|
||||
u8 reserved_at_f9[0x2];
|
||||
u8 fast_teardown[0x1];
|
||||
u8 log_max_eq[0x4];
|
||||
|
||||
u8 max_indirection[0x8];
|
||||
@@ -3352,12 +3353,13 @@ struct mlx5_ifc_teardown_hca_out_bits {
|
||||
|
||||
u8 reserved_at_40[0x3f];
|
||||
|
||||
u8 force_state[0x1];
|
||||
u8 state[0x1];
|
||||
};
|
||||
|
||||
enum {
|
||||
MLX5_TEARDOWN_HCA_IN_PROFILE_GRACEFUL_CLOSE = 0x0,
|
||||
MLX5_TEARDOWN_HCA_IN_PROFILE_FORCE_CLOSE = 0x1,
|
||||
MLX5_TEARDOWN_HCA_IN_PROFILE_PREPARE_FAST_TEARDOWN = 0x2,
|
||||
};
|
||||
|
||||
struct mlx5_ifc_teardown_hca_in_bits {
|
||||
|
Reference in New Issue
Block a user