diff options
author | Andrea Bittau <a.bittau@cs.ucl.ac.uk> | 2006-06-11 23:58:33 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-06-12 00:08:03 -0400 |
commit | afec35e3fee900b3016519d0b5512064e4625b2c (patch) | |
tree | 78e1fac9fe42700dd3d4a69aa219fdd0e0378f4d /net/dccp/ackvec.c | |
parent | 289a1e995e74734b5ec76ca8a5490058f4fecc24 (diff) |
[DCCP] Ackvec: fix soft lockup in ackvec handling code
A soft lockup existed in the handling of ack vector records.
Specifically, when a tail of the list of ack vector records was
removed, it was possible to end up iterating infinitely on an element
of the tail.
Signed-off-by: Andrea Bittau <a.bittau@cs.ucl.ac.uk>
Signed-off-by: Ian McDonald <ian.mcdonald@jandi.co.nz>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/ackvec.c')
-rw-r--r-- | net/dccp/ackvec.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/dccp/ackvec.c b/net/dccp/ackvec.c index b5981e5f6b00..8c211c58893b 100644 --- a/net/dccp/ackvec.c +++ b/net/dccp/ackvec.c | |||
@@ -452,6 +452,7 @@ found: | |||
452 | (unsigned long long) | 452 | (unsigned long long) |
453 | avr->dccpavr_ack_ackno); | 453 | avr->dccpavr_ack_ackno); |
454 | dccp_ackvec_throw_record(av, avr); | 454 | dccp_ackvec_throw_record(av, avr); |
455 | break; | ||
455 | } | 456 | } |
456 | /* | 457 | /* |
457 | * If it wasn't received, continue scanning... we might | 458 | * If it wasn't received, continue scanning... we might |