summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorTariq Toukan <tariqt@nvidia.com>2021-03-10 23:09:15 -0800
committerSaeed Mahameed <saeedm@nvidia.com>2021-03-12 13:07:46 -0800
commit26bf30902c10473ba38f220d3401a61c56d8db3b (patch)
tree4a7d3e53dc4b5bb96aec8670e21011b9b0b700e0 /include
parentc3e666f1ada9cbfbe5465f122f9a2d63ddfd25ed (diff)
downloadlinux-26bf30902c10473ba38f220d3401a61c56d8db3b.tar.bz2
net/mlx5: Use order-0 allocations for EQs
Currently we are allocating high-order page for EQs. In case of fragmented system, VF hot remove/add in VMs for example, there isn't enough contiguous memory for EQs allocation, which results in crashing of the VM. Therefore, use order-0 fragments for the EQ allocations instead. Performance tests: ConnectX-5 100Gbps, CPU: Intel(R) Xeon(R) CPU E5-2697 v3 @ 2.60GHz Performance tests show no sensible degradation. Signed-off-by: Tariq Toukan <tariqt@nvidia.com> Signed-off-by: Shay Drory <shayd@nvidia.com> Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/mlx5/driver.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/mlx5/driver.h b/include/linux/mlx5/driver.h
index 8fe51b4a781e..5c0422930b01 100644
--- a/include/linux/mlx5/driver.h
+++ b/include/linux/mlx5/driver.h
@@ -873,6 +873,11 @@ static inline u32 mlx5_base_mkey(const u32 key)
return key & 0xffffff00u;
}
+static inline u32 wq_get_byte_sz(u8 log_sz, u8 log_stride)
+{
+ return ((u32)1 << log_sz) << log_stride;
+}
+
static inline void mlx5_init_fbc_offset(struct mlx5_buf_list *frags,
u8 log_stride, u8 log_sz,
u16 strides_offset,