IB/mlx5: Support padded 128B CQE feature
In some benchmarks and some CPU architectures, writing the CQE on a full cache line size improves performance by saving memory access operations (read-modify-write) relative to partial cache line change. This patch lets the user to configure the device to pad the CQE up to 128B in case its content is less than 128B. Currently the driver supports only padding for a CQE size of 128B. Signed-off-by: Guy Levi <guyle@mellanox.com> Reviewed-by: Mark Bloch <markb@mellanox.com> Signed-off-by: Leon Romanovsky <leon@kernel.org> Signed-off-by: Doug Ledford <dledford@redhat.com>
This commit is contained in:
@@ -444,6 +444,10 @@ struct mlx5_shared_mr_info {
|
||||
struct ib_umem *umem;
|
||||
};
|
||||
|
||||
enum mlx5_ib_cq_pr_flags {
|
||||
MLX5_IB_CQ_PR_FLAGS_CQE_128_PAD = 1 << 0,
|
||||
};
|
||||
|
||||
struct mlx5_ib_cq {
|
||||
struct ib_cq ibcq;
|
||||
struct mlx5_core_cq mcq;
|
||||
@@ -466,6 +470,7 @@ struct mlx5_ib_cq {
|
||||
struct list_head wc_list;
|
||||
enum ib_cq_notify_flags notify_flags;
|
||||
struct work_struct notify_work;
|
||||
u16 private_flags; /* Use mlx5_ib_cq_pr_flags */
|
||||
};
|
||||
|
||||
struct mlx5_ib_wc {
|
||||
|
Fai riferimento in un nuovo problema
Block a user