diff options
| -rw-r--r-- | net/dccp/ccids/ccid2.c | 8 | ||||
| -rw-r--r-- | net/dccp/ccids/ccid2.h | 3 |
2 files changed, 5 insertions, 6 deletions
diff --git a/net/dccp/ccids/ccid2.c b/net/dccp/ccids/ccid2.c index 9fa0eb5f691b..a3c42cd00b00 100644 --- a/net/dccp/ccids/ccid2.c +++ b/net/dccp/ccids/ccid2.c | |||
| @@ -586,8 +586,7 @@ static void ccid2_hc_tx_packet_recv(struct sock *sk, struct sk_buff *skb) | |||
| 586 | hctx->ccid2hctx_rpdupack++; | 586 | hctx->ccid2hctx_rpdupack++; |
| 587 | 587 | ||
| 588 | /* check if we got enough dupacks */ | 588 | /* check if we got enough dupacks */ |
| 589 | if (hctx->ccid2hctx_rpdupack >= | 589 | if (hctx->ccid2hctx_rpdupack >= NUMDUPACK) { |
| 590 | hctx->ccid2hctx_numdupack) { | ||
| 591 | hctx->ccid2hctx_rpdupack = -1; /* XXX lame */ | 590 | hctx->ccid2hctx_rpdupack = -1; /* XXX lame */ |
| 592 | hctx->ccid2hctx_rpseq = 0; | 591 | hctx->ccid2hctx_rpseq = 0; |
| 593 | 592 | ||
| @@ -708,7 +707,7 @@ static void ccid2_hc_tx_packet_recv(struct sock *sk, struct sk_buff *skb) | |||
| 708 | while (1) { | 707 | while (1) { |
| 709 | if (seqp->ccid2s_acked) { | 708 | if (seqp->ccid2s_acked) { |
| 710 | done++; | 709 | done++; |
| 711 | if (done == hctx->ccid2hctx_numdupack) | 710 | if (done == NUMDUPACK) |
| 712 | break; | 711 | break; |
| 713 | } | 712 | } |
| 714 | if (seqp == hctx->ccid2hctx_seqt) | 713 | if (seqp == hctx->ccid2hctx_seqt) |
| @@ -719,7 +718,7 @@ static void ccid2_hc_tx_packet_recv(struct sock *sk, struct sk_buff *skb) | |||
| 719 | /* If there are at least 3 acknowledgements, anything unacknowledged | 718 | /* If there are at least 3 acknowledgements, anything unacknowledged |
| 720 | * below the last sequence number is considered lost | 719 | * below the last sequence number is considered lost |
| 721 | */ | 720 | */ |
| 722 | if (done == hctx->ccid2hctx_numdupack) { | 721 | if (done == NUMDUPACK) { |
| 723 | struct ccid2_seq *last_acked = seqp; | 722 | struct ccid2_seq *last_acked = seqp; |
| 724 | 723 | ||
| 725 | /* check for lost packets */ | 724 | /* check for lost packets */ |
| @@ -761,7 +760,6 @@ static int ccid2_hc_tx_init(struct ccid *ccid, struct sock *sk) | |||
| 761 | 760 | ||
| 762 | /* RFC 4341, 5: initialise ssthresh to arbitrarily high (max) value */ | 761 | /* RFC 4341, 5: initialise ssthresh to arbitrarily high (max) value */ |
| 763 | hctx->ccid2hctx_ssthresh = ~0; | 762 | hctx->ccid2hctx_ssthresh = ~0; |
| 764 | hctx->ccid2hctx_numdupack = 3; | ||
| 765 | 763 | ||
| 766 | /* | 764 | /* |
| 767 | * RFC 4341, 5: "The cwnd parameter is initialized to at most four | 765 | * RFC 4341, 5: "The cwnd parameter is initialized to at most four |
diff --git a/net/dccp/ccids/ccid2.h b/net/dccp/ccids/ccid2.h index 6d0b4e32b161..443f08a667a2 100644 --- a/net/dccp/ccids/ccid2.h +++ b/net/dccp/ccids/ccid2.h | |||
| @@ -24,6 +24,8 @@ | |||
| 24 | #include <linux/timer.h> | 24 | #include <linux/timer.h> |
| 25 | #include <linux/types.h> | 25 | #include <linux/types.h> |
| 26 | #include "../ccid.h" | 26 | #include "../ccid.h" |
| 27 | /* NUMDUPACK parameter from RFC 4341, p. 6 */ | ||
| 28 | #define NUMDUPACK 3 | ||
| 27 | 29 | ||
| 28 | struct sock; | 30 | struct sock; |
| 29 | 31 | ||
| @@ -52,7 +54,6 @@ struct ccid2_hc_tx_sock { | |||
| 52 | int ccid2hctx_acks; | 54 | int ccid2hctx_acks; |
| 53 | unsigned int ccid2hctx_ssthresh; | 55 | unsigned int ccid2hctx_ssthresh; |
| 54 | int ccid2hctx_pipe; | 56 | int ccid2hctx_pipe; |
| 55 | int ccid2hctx_numdupack; | ||
| 56 | struct ccid2_seq *ccid2hctx_seqbuf[CCID2_SEQBUF_MAX]; | 57 | struct ccid2_seq *ccid2hctx_seqbuf[CCID2_SEQBUF_MAX]; |
| 57 | int ccid2hctx_seqbufc; | 58 | int ccid2hctx_seqbufc; |
| 58 | struct ccid2_seq *ccid2hctx_seqh; | 59 | struct ccid2_seq *ccid2hctx_seqh; |
