xprtrdma: Clean up hdrlen
authorChuck Lever <chuck.lever@oracle.com>
Wed, 21 Jan 2015 16:02:29 +0000 (11:02 -0500)
committerAnna Schumaker <Anna.Schumaker@Netapp.com>
Fri, 30 Jan 2015 15:47:48 +0000 (10:47 -0500)
Clean up: Replace naked integers with a documenting macro.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Reviewed-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com>
include/linux/sunrpc/rpc_rdma.h
net/sunrpc/xprtrdma/rpc_rdma.c

index 1578ed2..f33c5a4 100644 (file)
@@ -98,7 +98,10 @@ struct rpcrdma_msg {
        } rm_body;
 };
 
-#define RPCRDMA_HDRLEN_MIN     28
+/*
+ * Smallest RPC/RDMA header: rm_xid through rm_type, then rm_nochunks
+ */
+#define RPCRDMA_HDRLEN_MIN     (sizeof(__be32) * 7)
 
 enum rpcrdma_errcode {
        ERR_VERS = 1,
index 150dd76..dcf5ebc 100644 (file)
@@ -472,7 +472,7 @@ rpcrdma_marshal_req(struct rpc_rqst *rqst)
                return -EIO;
        }
 
-       hdrlen = 28; /*sizeof *headerp;*/
+       hdrlen = RPCRDMA_HDRLEN_MIN;
        padlen = 0;
 
        /*
@@ -748,7 +748,7 @@ rpcrdma_reply_handler(struct rpcrdma_rep *rep)
                }
                return;
        }
-       if (rep->rr_len < 28) {
+       if (rep->rr_len < RPCRDMA_HDRLEN_MIN) {
                dprintk("RPC:       %s: short/invalid reply\n", __func__);
                goto repost;
        }
@@ -830,8 +830,9 @@ repost:
                } else {
                        /* else ordinary inline */
                        rdmalen = 0;
-                       iptr = (__be32 *)((unsigned char *)headerp + 28);
-                       rep->rr_len -= 28; /*sizeof *headerp;*/
+                       iptr = (__be32 *)((unsigned char *)headerp +
+                                                       RPCRDMA_HDRLEN_MIN);
+                       rep->rr_len -= RPCRDMA_HDRLEN_MIN;
                        status = rep->rr_len;
                }
                /* Fix up the rpc results for upper layer */
@@ -845,7 +846,8 @@ repost:
                    headerp->rm_body.rm_chunks[2] != xdr_one ||
                    req->rl_nchunks == 0)
                        goto badheader;
-               iptr = (__be32 *)((unsigned char *)headerp + 28);
+               iptr = (__be32 *)((unsigned char *)headerp +
+                                                       RPCRDMA_HDRLEN_MIN);
                rdmalen = rpcrdma_count_chunks(rep, req->rl_nchunks, 0, &iptr);
                if (rdmalen < 0)
                        goto badheader;