Trond Myklebust 1e799b673c SUNRPC: Fix read ordering problems with req->rq_private_buf.len
We want to ensure that req->rq_private_buf.len is updated before
req->rq_received, so that call_decode() doesn't use an old value for
req->rq_rcv_buf.len.

In 'call_decode()' itself, instead of using task->tk_status (which is set
using req->rq_received) must use the actual value of
req->rq_private_buf.len when deciding whether or not the received RPC reply
is too short.

Finally ensure that we set req->rq_rcv_buf.len to zero when retrying a
request. A typo meant that we were resetting req->rq_private_buf.len in
call_decode(), and then clobbering that value with the old rq_rcv_buf.len
again in xprt_transmit().

Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
2008-04-19 16:53:20 -04:00
..
2008-02-07 18:05:04 -08:00
2008-03-19 04:27:53 +01:00
2008-03-04 14:29:21 -08:00
2008-03-03 12:12:33 -08:00
2008-03-04 18:36:35 -05:00
2008-01-28 15:02:44 -08:00
2008-02-14 21:13:33 -08:00
2008-01-28 15:10:48 -08:00
2008-01-28 14:54:10 -08:00
2008-01-28 14:56:29 -08:00
2005-04-16 15:20:36 -07:00