diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2016-03-01 21:07:05 +0300 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2016-03-02 00:06:41 +0300 |
commit | ec705fd4d09be5c76178d8ac875cb4a8e91558a5 (patch) | |
tree | bf82d43ddfcceec9e4cce60702c405eb710cfeed /net/sunrpc/xprtrdma/svc_rdma_recvfrom.c | |
parent | a0544c946dfdba9d93ad9030e7bb6db1961d45c1 (diff) | |
download | linux-ec705fd4d09be5c76178d8ac875cb4a8e91558a5.tar.xz |
svcrdma: Remove close_out exit path
Clean up: close_out is reached only when ctxt == NULL and XPT_CLOSE
is already set.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Reviewed-by: Devesh Sharma <devesh.sharma@broadcom.com>
Tested-by: Devesh Sharma <devesh.sharma@broadcom.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.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c index f8b840b17c02..d3718e94c169 100644 --- a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c +++ b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c @@ -641,8 +641,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp) * transport list */ if (test_bit(XPT_CLOSE, &xprt->xpt_flags)) - goto close_out; - + goto defer; goto out; } dprintk("svcrdma: processing ctxt=%p on xprt=%p, rqstp=%p, status=%d\n", @@ -700,15 +699,6 @@ out_err: svc_rdma_put_context(ctxt, 0); return 0; - close_out: - if (ctxt) - svc_rdma_put_context(ctxt, 1); - dprintk("svcrdma: transport %p is closing\n", xprt); - /* - * Set the close bit and enqueue it. svc_recv will see the - * close bit and call svc_xprt_delete - */ - set_bit(XPT_CLOSE, &xprt->xpt_flags); defer: return 0; |