IB/mlx5: Support padded 128B CQE feature
authorGuy Levi <guyle@mellanox.com>
Thu, 19 Oct 2017 05:25:53 +0000 (08:25 +0300)
committerDoug Ledford <dledford@redhat.com>
Wed, 25 Oct 2017 18:17:06 +0000 (14:17 -0400)
commit7a0c8f4244e9ec7a630563d294b211342b46223d
treef5db884ceca6261ec04e0d70ef8174e0ac3a92fd
parentde57f2ad06d5bf01015b955600cbfc77059b2b6e
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>
drivers/infiniband/hw/mlx5/cq.c
drivers/infiniband/hw/mlx5/main.c
drivers/infiniband/hw/mlx5/mlx5_ib.h
include/linux/mlx5/cq.h
include/uapi/rdma/mlx5-abi.h