Skip to content

Scatter to CQE

Leon Romanovsky linux-rdma netdev 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest4 patches 3 repliesIn review

Changes in v1 from the cover letter

* Changed patch #3 to use check_mask function from rdma-core instead define.

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4net/mlx5: Expose DC scatter to CQE capability bitinclude/linux/mlx5/mlx5_ifc.h+2 -10 replies
2/4IB/mlx5: Support scatter to CQE for DC transport typedrivers/infiniband/hw/mlx5/cq.c drivers/infiniband/hw/mlx5/mlx5_ib.h drivers/infiniband/hw/mlx5/qp.c+54 -210 replies
3/4IB/mlx5: Verify that driver supports user flagsdrivers/infiniband/hw/mlx5/qp.c+14 -00 replies
4/4IB/mlx5: Allow scatter to CQE without global signaled WRsdrivers/infiniband/hw/mlx5/qp.c include/uapi/rdma/mlx5-abi.h+12 -30 replies

Reviews trailers per patch

3 of 4 patches have a Reviewed-by or Acked-by.

PatchGuy Levi
1/4R-b
2/4R-b
3/4
4/4R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v1 thread

Cover letter [PATCH rdma-next v1 0/4] Scatter to CQE

From: Leon Romanovsky <[email protected]>

Changelog v0->v1:
* Changed patch #3 to use check_mask function from rdma-core instead define.

--------------------------------------------------------------------------

Quoted 1 line

From Yonatan,

Scatter to CQE is a HW offload feature that saves PCI writes by scattering the payload to the CQE.

The feature depends on the CQE size and if the CQE size is 64B, it will work for payload smaller than 32. If the CQE size is 128B, it will work for payload smaller than 64.

The feature works for responder and requestor:
1. For responder, if the payload is small as required above, the data will be part of the CQE, and thus we save another PCI transaction the recv buffers.
2. For requestor, this can be used to get the RDMA_READ response and RDMA_ATOMIC response in the CQE. This feature is already supported in upstream.

As part of this series, we are adding support for DC transport type and ability to enable the feature (force enable) in the requestor when SQ is not configured to signal all WRs.

Thanks

Yonatan Cohen (4):
net/mlx5: Expose DC scatter to CQE capability bit IB/mlx5: Support scatter to CQE for DC transport type IB/mlx5: Verify that driver supports user flags IB/mlx5: Allow scatter to CQE without global signaled WRs

 drivers/infiniband/hw/mlx5/cq.c      |  2 +-
 drivers/infiniband/hw/mlx5/mlx5_ib.h |  2 +-
 drivers/infiniband/hw/mlx5/qp.c      | 93 ++++++++++++++++++++++++++++--------
 include/linux/mlx5/mlx5_ifc.h        |  3 +-
 include/uapi/rdma/mlx5-abi.h         |  1 +
 5 files changed, 79 insertions(+), 22 deletions(-)