Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a0903622 authored by Tariq Toukan's avatar Tariq Toukan Committed by Saeed Mahameed
Browse files

net/mlx5: Use u16 for Work Queue buffer strides offset



Minimal stride size is 16.
Hence, the number of strides in a fragment (of PAGE_SIZE)
is <= PAGE_SIZE / 16 <= 4K.

u16 is sufficient to represent this.

Fixes: d7037ad7 ("net/mlx5: Fix QP fragmented buffer allocation")
Signed-off-by: default avatarTariq Toukan <tariqt@mellanox.com>
Reviewed-by: default avatarEran Ben Elisha <eranbe@mellanox.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
parent 8d71e818
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -138,7 +138,7 @@ int mlx5_wq_qp_create(struct mlx5_core_dev *mdev, struct mlx5_wq_param *param,
		      void *qpc, struct mlx5_wq_qp *wq,
		      struct mlx5_wq_ctrl *wq_ctrl)
{
	u32 sq_strides_offset;
	u16 sq_strides_offset;
	u32 rq_pg_remainder;
	int err;

+2 −2
Original line number Diff line number Diff line
@@ -363,7 +363,7 @@ struct mlx5_frag_buf_ctrl {
	struct mlx5_frag_buf	frag_buf;
	u32			sz_m1;
	u16			frag_sz_m1;
	u32			strides_offset;
	u16			strides_offset;
	u8			log_sz;
	u8			log_stride;
	u8			log_frag_strides;
@@ -995,7 +995,7 @@ static inline u32 mlx5_base_mkey(const u32 key)
}

static inline void mlx5_fill_fbc_offset(u8 log_stride, u8 log_sz,
					u32 strides_offset,
					u16 strides_offset,
					struct mlx5_frag_buf_ctrl *fbc)
{
	fbc->log_stride = log_stride;