2014-06-05 14:54:32

by Steve Wise

[permalink] [raw]
Subject: [PATCH V2] svcrdma: Fence LOCAL_INV work requests

This applies on top of:

commit e5a070216356dbcb03607cb264cc3104e17339b3
Author: Steve Wise <[email protected]>
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 <[email protected]>
---

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;



2014-06-05 16:13:53

by J. Bruce Fields

[permalink] [raw]
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 <[email protected]>
> 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 <[email protected]>
> ---
>
> 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;
>

2014-06-05 16:21:41

by Steve Wise

[permalink] [raw]
Subject: RE: [PATCH V2] svcrdma: Fence LOCAL_INV work requests



> -----Original Message-----
> From: J. Bruce Fields [mailto:[email protected]]
> Sent: Thursday, June 05, 2014 11:14 AM
> To: Steve Wise
> Cc: [email protected]; [email protected]; [email protected]
> 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 <[email protected]>
> > 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.