summaryrefslogtreecommitdiff
path: root/net/rxrpc/ar-output.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-22 11:10:05 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-06-22 11:10:05 -0700
commite2f90a9141d9e1a4cd0e79716919a5fa39684ae9 (patch)
tree2a61c5286b7e0d83e2c6a62d9b39e6ab33b1ff08 /net/rxrpc/ar-output.c
parent0864a4e201b1ea442f4c8b887418a29f67e24d30 (diff)
parent19e6454ca778e11e81497bd87c930dc0defd03d7 (diff)
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: [AF_RXRPC]: Return the number of bytes buffered in rxrpc_send_data() [IPVS]: Fix state variable on failure to start ipvs threads [XFRM]: Fix MTU calculation for non-ESP SAs
Diffstat (limited to 'net/rxrpc/ar-output.c')
-rw-r--r--net/rxrpc/ar-output.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/rxrpc/ar-output.c b/net/rxrpc/ar-output.c
index 591c4422205e..cc9102c5b588 100644
--- a/net/rxrpc/ar-output.c
+++ b/net/rxrpc/ar-output.c
@@ -640,6 +640,7 @@ static int rxrpc_send_data(struct kiocb *iocb,
goto efault;
sp->remain -= copy;
skb->mark += copy;
+ copied += copy;
len -= copy;
segment -= copy;
@@ -709,6 +710,8 @@ static int rxrpc_send_data(struct kiocb *iocb,
} while (segment > 0);
+success:
+ ret = copied;
out:
call->tx_pending = skb;
_leave(" = %d", ret);
@@ -725,7 +728,7 @@ call_aborted:
maybe_error:
if (copied)
- ret = copied;
+ goto success;
goto out;
efault: