rpc/rdma: goto instead of copypaste
authorIlpo Järvinen <ilpo.jarvinen@helsinki.fi>
Mon, 15 Dec 2008 07:19:48 +0000 (23:19 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 15 Dec 2008 07:19:48 +0000 (23:19 -0800)
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sunrpc/xprtrdma/svc_rdma_recvfrom.c

index a4756576d68794a1106c4404b39ad9adf510a906..629a28764da9362c773050a5bcde27ecb19d0ed2 100644 (file)
@@ -646,8 +646,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
        ret = rdma_read_xdr(rdma_xprt, rmsgp, rqstp, ctxt);
        if (ret > 0) {
                /* read-list posted, defer until data received from client. */
-               svc_xprt_received(xprt);
-               return 0;
+               goto defer;
        }
        if (ret < 0) {
                /* Post of read-list failed, free context. */
@@ -679,6 +678,7 @@ int svc_rdma_recvfrom(struct svc_rqst *rqstp)
         * close bit and call svc_xprt_delete
         */
        set_bit(XPT_CLOSE, &xprt->xpt_flags);
+defer:
        svc_xprt_received(xprt);
        return 0;
 }