aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/mlx5/wr.c
diff options
context:
space:
mode:
authorAvihai Horon <avihaih@nvidia.com>2021-06-09 14:05:03 +0300
committerJason Gunthorpe <jgg@nvidia.com>2021-06-21 12:33:08 -0300
commit1477d44ce47d6cf3b2bab1afbca573b4f677666c (patch)
tree2b30f6245cbbc45d1f8561f8fc1267e6dd7d6f46 /drivers/infiniband/hw/mlx5/wr.c
parentRDMA/hns: Clear extended doorbell info before using (diff)
downloadlinux-dev-1477d44ce47d6cf3b2bab1afbca573b4f677666c.tar.xz
linux-dev-1477d44ce47d6cf3b2bab1afbca573b4f677666c.zip
RDMA/mlx5: Enable Relaxed Ordering by default for kernel ULPs
Relaxed Ordering is a capability that can only benefit users that support it. All kernel ULPs should support Relaxed Ordering, as they are designed to read data only after observing the CQE and use the DMA API correctly. Hence, implicitly enable Relaxed Ordering by default for MR transfers in kernel ULPs. Link: https://lore.kernel.org/r/b7e820aab7402b8efa63605f4ea465831b3b1e5e.1623236426.git.leonro@nvidia.com Signed-off-by: Avihai Horon <avihaih@nvidia.com> Signed-off-by: Leon Romanovsky <leonro@nvidia.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Diffstat (limited to 'drivers/infiniband/hw/mlx5/wr.c')
-rw-r--r--drivers/infiniband/hw/mlx5/wr.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/infiniband/hw/mlx5/wr.c b/drivers/infiniband/hw/mlx5/wr.c
index 6880627c45be..8841620af82f 100644
--- a/drivers/infiniband/hw/mlx5/wr.c
+++ b/drivers/infiniband/hw/mlx5/wr.c
@@ -866,7 +866,10 @@ static int set_reg_wr(struct mlx5_ib_qp *qp,
bool atomic = wr->access & IB_ACCESS_REMOTE_ATOMIC;
u8 flags = 0;
- /* Matches access in mlx5_set_umr_free_mkey() */
+ /* Matches access in mlx5_set_umr_free_mkey().
+ * Relaxed Ordering is set implicitly in mlx5_set_umr_free_mkey() and
+ * kernel ULPs are not aware of it, so we don't set it here.
+ */
if (!mlx5_ib_can_reconfig_with_umr(dev, 0, wr->access)) {
mlx5_ib_warn(
to_mdev(qp->ibqp.device),