diff mbox

[V2] svcrdma: Fence LOCAL_INV work requests

Message ID 20140605145429.14347.22150.stgit@build.ogc.int (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Steve Wise June 5, 2014, 2:54 p.m. UTC
This applies on top of:

	commit e5a070216356dbcb03607cb264cc3104e17339b3
	Author: Steve Wise <swise@opengridcomputing.com>
	Date:   Wed May 28 15:12:01 2014 -0500

	    svcrdma: refactor marshalling logic

Fencing forces the invalidate to only happen after all prior send
work requests have been completed.

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
---

 net/sunrpc/xprtrdma/svc_rdma_recvfrom.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)


--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

J. Bruce Fields June 5, 2014, 4:13 p.m. UTC | #1
On Thu, Jun 05, 2014 at 09:54:31AM -0500, Steve Wise wrote:
> This applies on top of:
> 
> 	commit e5a070216356dbcb03607cb264cc3104e17339b3
> 	Author: Steve Wise <swise@opengridcomputing.com>
> 	Date:   Wed May 28 15:12:01 2014 -0500
> 
> 	    svcrdma: refactor marshalling logic

Sorry, I lost track--was there another revision of that patch coming
too?

--b.

> 
> Fencing forces the invalidate to only happen after all prior send
> work requests have been completed.
> 
> Signed-off-by: Steve Wise <swise@opengridcomputing.com>
> ---
> 
>  net/sunrpc/xprtrdma/svc_rdma_recvfrom.c |    2 +-
>  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 52d9f2c..8f92a61 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;
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Steve Wise June 5, 2014, 4:21 p.m. UTC | #2
> -----Original Message-----
> From: J. Bruce Fields [mailto:bfields@fieldses.org]
> Sent: Thursday, June 05, 2014 11:14 AM
> To: Steve Wise
> Cc: linux-nfs@vger.kernel.org; linux-rdma@vger.kernel.org; tom@opengridcomputing.com
> Subject: Re: [PATCH V2] svcrdma: Fence LOCAL_INV work requests
> 
> On Thu, Jun 05, 2014 at 09:54:31AM -0500, Steve Wise wrote:
> > This applies on top of:
> >
> > 	commit e5a070216356dbcb03607cb264cc3104e17339b3
> > 	Author: Steve Wise <swise@opengridcomputing.com>
> > 	Date:   Wed May 28 15:12:01 2014 -0500
> >
> > 	    svcrdma: refactor marshalling logic
> 
> Sorry, I lost track--was there another revision of that patch coming
> too?
> 

No. 



--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c
index 52d9f2c..8f92a61 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;