Messages in this thread Patch in this message | | | From | Leon Romanovsky <> | Subject | [PATCH rdma-next 07/10] cifs: smbd: Enable Relaxed Ordering | Date | Mon, 5 Apr 2021 08:24:01 +0300 |
| |
From: Avihai Horon <avihaih@nvidia.com>
Enable Relaxed Ordering for smbd.
Relaxed Ordering is an optional access flag and as such, it is ignored by vendors that don't support it.
Signed-off-by: Avihai Horon <avihaih@nvidia.com> Reviewed-by: Michael Guralnik <michaelgur@nvidia.com> Signed-off-by: Leon Romanovsky <leonro@nvidia.com> --- fs/cifs/smbdirect.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-)
diff --git a/fs/cifs/smbdirect.c b/fs/cifs/smbdirect.c index 647098a5cf3b..1e86dc8bbe85 100644 --- a/fs/cifs/smbdirect.c +++ b/fs/cifs/smbdirect.c @@ -2178,8 +2178,10 @@ static void smbd_mr_recovery_work(struct work_struct *work) continue; } - smbdirect_mr->mr = ib_alloc_mr(info->pd, info->mr_type, - info->max_frmr_depth, 0); + smbdirect_mr->mr = + ib_alloc_mr(info->pd, info->mr_type, + info->max_frmr_depth, + IB_ACCESS_RELAXED_ORDERING); if (IS_ERR(smbdirect_mr->mr)) { log_rdma_mr(ERR, "ib_alloc_mr failed mr_type=%x max_frmr_depth=%x\n", info->mr_type, @@ -2244,7 +2246,8 @@ static int allocate_mr_list(struct smbd_connection *info) if (!smbdirect_mr) goto out; smbdirect_mr->mr = ib_alloc_mr(info->pd, info->mr_type, - info->max_frmr_depth, 0); + info->max_frmr_depth, + IB_ACCESS_RELAXED_ORDERING); if (IS_ERR(smbdirect_mr->mr)) { log_rdma_mr(ERR, "ib_alloc_mr failed mr_type=%x max_frmr_depth=%x\n", info->mr_type, info->max_frmr_depth); @@ -2406,9 +2409,10 @@ struct smbd_mr *smbd_register_mr( reg_wr->wr.send_flags = IB_SEND_SIGNALED; reg_wr->mr = smbdirect_mr->mr; reg_wr->key = smbdirect_mr->mr->rkey; - reg_wr->access = writing ? - IB_ACCESS_REMOTE_WRITE | IB_ACCESS_LOCAL_WRITE : - IB_ACCESS_REMOTE_READ; + reg_wr->access = + (writing ? IB_ACCESS_REMOTE_WRITE | IB_ACCESS_LOCAL_WRITE : + IB_ACCESS_REMOTE_READ) | + IB_ACCESS_RELAXED_ORDERING; /* * There is no need for waiting for complemtion on ib_post_send -- 2.30.2
| |