summaryrefslogtreecommitdiffstats
path: root/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
diff options
context:
space:
mode:
authorSteve Wise2014-06-05 16:54:31 +0200
committerJ. Bruce Fields2014-06-07 01:22:51 +0200
commit83710fc753d2ae158aa3cb7a7966d9c1bd05b792 (patch)
tree35e9c7832afb03d61c1e5d9425e6294e4ac25c38 /net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
parentsvcrdma: refactor marshalling logic (diff)
downloadkernel-qcow2-linux-83710fc753d2ae158aa3cb7a7966d9c1bd05b792.tar.gz
kernel-qcow2-linux-83710fc753d2ae158aa3cb7a7966d9c1bd05b792.tar.xz
kernel-qcow2-linux-83710fc753d2ae158aa3cb7a7966d9c1bd05b792.zip
svcrdma: Fence LOCAL_INV work requests
Fencing forces the invalidate to only happen after all prior send work requests have been completed. Signed-off-by: Steve Wise <swise@opengridcomputing.com> Reported by : Devesh Sharma <Devesh.Sharma@Emulex.Com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'net/sunrpc/xprtrdma/svc_rdma_recvfrom.c')
-rw-r--r--net/sunrpc/xprtrdma/svc_rdma_recvfrom.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
index 52d9f2ce20b0..8f92a61ee2df 100644
--- a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
+++ b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
@@ -338,7 +338,7 @@ static int rdma_read_chunk_frmr(struct svcxprt_rdma *xprt,
memset(&inv_wr, 0, sizeof(inv_wr));
inv_wr.wr_id = (unsigned long)ctxt;
inv_wr.opcode = IB_WR_LOCAL_INV;
- inv_wr.send_flags = IB_SEND_SIGNALED;
+ inv_wr.send_flags = IB_SEND_SIGNALED | IB_SEND_FENCE;
inv_wr.ex.invalidate_rkey = frmr->mr->lkey;
}
ctxt->wr_op = read_wr.opcode;