aboutsummaryrefslogtreecommitdiffstats
path: root/net/dccp/ccids/ccid2.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/dccp/ccids/ccid2.c')
-rw-r--r--net/dccp/ccids/ccid2.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/net/dccp/ccids/ccid2.c b/net/dccp/ccids/ccid2.c
index 6576eae9e779..cb1b4a0d1877 100644
--- a/net/dccp/ccids/ccid2.c
+++ b/net/dccp/ccids/ccid2.c
@@ -513,8 +513,7 @@ static void ccid2_hc_tx_packet_recv(struct sock *sk, struct sk_buff *skb)
513 &vector, &veclen)) != -1) { 513 &vector, &veclen)) != -1) {
514 /* go through this ack vector */ 514 /* go through this ack vector */
515 while (veclen--) { 515 while (veclen--) {
516 const u8 rl = *vector & DCCP_ACKVEC_LEN_MASK; 516 u64 ackno_end_rl = SUB48(ackno, dccp_ackvec_runlen(vector));
517 u64 ackno_end_rl = SUB48(ackno, rl);
518 517
519 ccid2_pr_debug("ackvec start:%llu end:%llu\n", 518 ccid2_pr_debug("ackvec start:%llu end:%llu\n",
520 (unsigned long long)ackno, 519 (unsigned long long)ackno,
@@ -537,17 +536,15 @@ static void ccid2_hc_tx_packet_recv(struct sock *sk, struct sk_buff *skb)
537 * run length 536 * run length
538 */ 537 */
539 while (between48(seqp->ccid2s_seq,ackno_end_rl,ackno)) { 538 while (between48(seqp->ccid2s_seq,ackno_end_rl,ackno)) {
540 const u8 state = *vector & 539 const u8 state = dccp_ackvec_state(vector);
541 DCCP_ACKVEC_STATE_MASK;
542 540
543 /* new packet received or marked */ 541 /* new packet received or marked */
544 if (state != DCCP_ACKVEC_STATE_NOT_RECEIVED && 542 if (state != DCCPAV_NOT_RECEIVED &&
545 !seqp->ccid2s_acked) { 543 !seqp->ccid2s_acked) {
546 if (state == 544 if (state == DCCPAV_ECN_MARKED)
547 DCCP_ACKVEC_STATE_ECN_MARKED) {
548 ccid2_congestion_event(sk, 545 ccid2_congestion_event(sk,
549 seqp); 546 seqp);
550 } else 547 else
551 ccid2_new_ack(sk, seqp, 548 ccid2_new_ack(sk, seqp,
552 &maxincr); 549 &maxincr);
553 550