From: Frédéric Lécaille Date: Mon, 21 Mar 2022 15:12:19 +0000 (+0100) Subject: BUG/MINOR: quic: Wrong TX packet related counters handling X-Git-Tag: v2.6-dev4~29 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=76fc07e9a06a50d01506fcf35be15e753fd4f90f;p=thirdparty%2Fhaproxy.git BUG/MINOR: quic: Wrong TX packet related counters handling During the packet number space discarding, do no reset tx.in_flight counter before decrement it from other variables. Furthermore path prep_in_flight counter was not decremented. --- diff --git a/include/haproxy/xprt_quic.h b/include/haproxy/xprt_quic.h index 3135ce5fc8..3348d82cf6 100644 --- a/include/haproxy/xprt_quic.h +++ b/include/haproxy/xprt_quic.h @@ -1029,12 +1029,14 @@ static inline void quic_pktns_discard(struct quic_pktns *pktns, { struct eb64_node *node; + qc->path->in_flight -= pktns->tx.in_flight; + qc->path->prep_in_flight -= pktns->tx.in_flight; + qc->path->loss.pto_count = 0; + pktns->tx.time_of_last_eliciting = 0; pktns->tx.loss_time = TICK_ETERNITY; pktns->tx.pto_probe = 0; pktns->tx.in_flight = 0; - qc->path->loss.pto_count = 0; - qc->path->in_flight -= pktns->tx.in_flight; node = eb64_first(&pktns->tx.pkts); while (node) {