summaryrefslogtreecommitdiffstats
path: root/net/rxrpc/ar-ack.c
diff options
context:
space:
mode:
authorFlorian Westphal <fw@strlen.de>2015-02-28 11:51:36 +0100
committerDavid S. Miller <davem@davemloft.net>2015-03-01 19:40:23 +0100
commitc03ae533a9c4de83a35105f9bfd7152d916b4680 (patch)
treeb97d7444f8de87b82d94d24d81153c496678fe77 /net/rxrpc/ar-ack.c
parentnet/hsr: Fix NULL pointer dereference and refcnt bugs when deleting a HSR int... (diff)
downloadlinux-c03ae533a9c4de83a35105f9bfd7152d916b4680.tar.xz
linux-c03ae533a9c4de83a35105f9bfd7152d916b4680.zip
rxrpc: terminate retrans loop when sending of skb fails
Typo, 'stop' is never set to true. Seems intent is to not attempt to retransmit more packets after sendmsg returns an error. This change is based on code inspection only. Signed-off-by: Florian Westphal <fw@strlen.de> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rxrpc/ar-ack.c')
-rw-r--r--net/rxrpc/ar-ack.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/net/rxrpc/ar-ack.c b/net/rxrpc/ar-ack.c
index c6be17a959a6..40404183a5da 100644
--- a/net/rxrpc/ar-ack.c
+++ b/net/rxrpc/ar-ack.c
@@ -218,7 +218,8 @@ static void rxrpc_resend(struct rxrpc_call *call)
struct rxrpc_header *hdr;
struct sk_buff *txb;
unsigned long *p_txb, resend_at;
- int loop, stop;
+ bool stop;
+ int loop;
u8 resend;
_enter("{%d,%d,%d,%d},",
@@ -226,7 +227,7 @@ static void rxrpc_resend(struct rxrpc_call *call)
atomic_read(&call->sequence),
CIRC_CNT(call->acks_head, call->acks_tail, call->acks_winsz));
- stop = 0;
+ stop = false;
resend = 0;
resend_at = 0;
@@ -255,7 +256,7 @@ static void rxrpc_resend(struct rxrpc_call *call)
_proto("Tx DATA %%%u { #%d }",
ntohl(sp->hdr.serial), ntohl(sp->hdr.seq));
if (rxrpc_send_packet(call->conn->trans, txb) < 0) {
- stop = 0;
+ stop = true;
sp->resend_at = jiffies + 3;
} else {
sp->resend_at =