summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2009-08-28 11:12:12 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2009-08-28 19:35:56 -1000
commit2574cc9f4ffc6c681c9177111357efe5b76f0e36 (patch)
tree5e220b5a26e25df9fc03b58c7fa4daeebafce062 /net
parentea6bff368548d79529421a9dc0710fc5330eb504 (diff)
downloadlinux-3.10-2574cc9f4ffc6c681c9177111357efe5b76f0e36.tar.gz
linux-3.10-2574cc9f4ffc6c681c9177111357efe5b76f0e36.tar.bz2
linux-3.10-2574cc9f4ffc6c681c9177111357efe5b76f0e36.zip
SUNRPC: Fix rpc_task_force_reencode
This patch fixes the bug that was reported in http://bugzilla.kernel.org/show_bug.cgi?id=14053 If we're in the case where we need to force a reencode and then resend of the RPC request, due to xprt_transmit failing with a networking error, then we _must_ retransmit the entire request. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Cc: stable@kernel.org Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'net')
-rw-r--r--net/sunrpc/clnt.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/sunrpc/clnt.c b/net/sunrpc/clnt.c
index ebfcf9b8990..df1039f077c 100644
--- a/net/sunrpc/clnt.c
+++ b/net/sunrpc/clnt.c
@@ -937,6 +937,7 @@ static inline void
rpc_task_force_reencode(struct rpc_task *task)
{
task->tk_rqstp->rq_snd_buf.len = 0;
+ task->tk_rqstp->rq_bytes_sent = 0;
}
static inline void