BUG/MEDIUM: quic: reset cwnd in slow_start on persistent congestion (cubic)

The cubic slow_start callback was only resetting the internal cubic state
without reducing the congestion window, unlike newreno which calls
quic_cc_path_reset(). Per RFC 9002, persistent congestion should trigger
both entry into slow start and a reduction of the congestion window.

Must be backported to all versions.
This commit is contained in:
Frederic Lecaille 2026-05-28 15:08:07 +02:00
parent 4e0af590e8
commit ab8603c6d5

View file

@ -390,7 +390,10 @@ static inline void quic_cubic_update(struct quic_cc *cc, uint32_t acked)
static void quic_cc_cubic_slow_start(struct quic_cc *cc)
{
struct quic_cc_path *path = container_of(cc, struct quic_cc_path, cc);
TRACE_ENTER(QUIC_EV_CONN_CC, cc->qc);
quic_cc_path_reset(path);
quic_cc_cubic_reset(cc);
TRACE_LEAVE(QUIC_EV_CONN_CC, cc->qc);
}