> On Feb 1, 2017, at 1:29 PM, Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote: > > On Tue, Jan 31, 2017 at 01:53:18PM -0500, Chuck Lever wrote: >> Replace C structure-based XDR decoding with pointer arithmetic. >> Pointer arithmetic is considered more portable. >> >> Signed-off-by: Chuck Lever <chuck.lever@xxxxxxxxxx> >> --- >> net/sunrpc/xprtrdma/svc_rdma_backchannel.c | 17 +++++++++-------- >> 1 file changed, 9 insertions(+), 8 deletions(-) >> >> diff --git a/net/sunrpc/xprtrdma/svc_rdma_backchannel.c b/net/sunrpc/xprtrdma/svc_rdma_backchannel.c >> index 288e35c..abfce04 100644 >> --- a/net/sunrpc/xprtrdma/svc_rdma_backchannel.c >> +++ b/net/sunrpc/xprtrdma/svc_rdma_backchannel.c >> @@ -200,19 +200,20 @@ static int svc_rdma_bc_sendto(struct svcxprt_rdma *rdma, >> { >> struct rpc_xprt *xprt = rqst->rq_xprt; >> struct rpcrdma_xprt *r_xprt = rpcx_to_rdmax(xprt); >> - struct rpcrdma_msg *headerp = (struct rpcrdma_msg *)rqst->rq_buffer; >> + __be32 *p; >> int rc; >> >> /* Space in the send buffer for an RPC/RDMA header is reserved >> * via xprt->tsh_size. >> */ >> + p = (__be32 *)rqst->rq_buffer; > > Why not move the assignment onto the same line as the declaration > of p? My "convention" is that if the value of an automatic variable remains constant throughout a function, it can be initialized where it is declared. Whereas the value of "headerp" is fixed, and header offsets were generated by the compiler, the value of "p" here varies as the header is marshaled. It's merely a documentation convention; a nit, really. > Also rq_buffer is a void pointer, so the cast shouldn't be needed. OK. > Otherwise looks fine: > > Reviewed-by: Christoph Hellwig <hch@xxxxxx> > -- > To unsubscribe from this list: send the line "unsubscribe linux-rdma" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- Chuck Lever -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html