SUNRPC xprtrdma: fix XDR tail buf marshalling for all ops
authorJames Lentini <jlentini@netapp.com>
Mon, 10 Dec 2007 16:24:48 +0000 (11:24 -0500)
committerTrond Myklebust <Trond.Myklebust@netapp.com>
Wed, 12 Dec 2007 03:01:59 +0000 (22:01 -0500)
commit50e1092b3a119bb4660bb6bd2e1749dc2d8ac62e
tree68278271b9dc445ad9d2f2b0475930968c8568fc
parent5cef338b30c110daf547fb13d99f0c77f2a79fbc
SUNRPC xprtrdma: fix XDR tail buf marshalling for all ops

rpcrdma_convert_iovs is passed an xdr_buf representing either an RPC
request or an RPC reply. In the case of a request, several
calculations and tests involving pos are unnecessary. In the case of a
reply, several calculations and tests involving pos are incorrect (the
code tests pos against the reply xdr buf's len field, which is always
0 at the time rpcrdma_convert_iovs is executed). This change removes
the incorrect/unnecessary calculations and tests involving pos.

This fixes an observed problem when reading certain file sizes over
NFS/RDMA.

Signed-off-by: Tom Tucker <tom@opengridcomputing.com>
Signed-off-by: Tom Talpey <talpey@netapp.com>
Signed-off-by: James Lentini <jlentini@netapp.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
net/sunrpc/xprtrdma/rpc_rdma.c