/linux/net/ipv4/ |
H A D | tcp_yeah.c | 74 tcp_cong_avoid_ai(tp, min(tcp_snd_cwnd(tp), TCP_SCALABLE_AI_CNT), in tcp_yeah_cong_avoid() 78 tcp_cong_avoid_ai(tp, tcp_snd_cwnd(tp), acked); in tcp_yeah_cong_avoid() 133 bw = tcp_snd_cwnd(tp); in tcp_yeah_cong_avoid() 141 tcp_snd_cwnd(tp) > yeah->reno_count) { in tcp_yeah_cong_avoid() 143 tcp_snd_cwnd(tp) >> TCP_YEAH_EPSILON); in tcp_yeah_cong_avoid() 145 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) - reduction); in tcp_yeah_cong_avoid() 147 tcp_snd_cwnd_set(tp, max(tcp_snd_cwnd(tp), in tcp_yeah_cong_avoid() 150 tp->snd_ssthresh = tcp_snd_cwnd(tp); in tcp_yeah_cong_avoid() 154 yeah->reno_count = max(tcp_snd_cwnd(tp)>>1, 2U); in tcp_yeah_cong_avoid() 179 yeah->vegas.beg_snd_cwnd = tcp_snd_cwnd(tp); in tcp_yeah_cong_avoid() [all …]
|
H A D | tcp_highspeed.c | 130 if (tcp_snd_cwnd(tp) > hstcp_aimd_vals[ca->ai].cwnd) { in hstcp_cong_avoid() 131 while (tcp_snd_cwnd(tp) > hstcp_aimd_vals[ca->ai].cwnd && in hstcp_cong_avoid() 134 } else if (ca->ai && tcp_snd_cwnd(tp) <= hstcp_aimd_vals[ca->ai-1].cwnd) { in hstcp_cong_avoid() 135 while (ca->ai && tcp_snd_cwnd(tp) <= hstcp_aimd_vals[ca->ai-1].cwnd) in hstcp_cong_avoid() 140 if (tcp_snd_cwnd(tp) < tp->snd_cwnd_clamp) { in hstcp_cong_avoid() 143 if (tp->snd_cwnd_cnt >= tcp_snd_cwnd(tp)) { in hstcp_cong_avoid() 144 tp->snd_cwnd_cnt -= tcp_snd_cwnd(tp); in hstcp_cong_avoid() 145 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in hstcp_cong_avoid() 157 return max(tcp_snd_cwnd(tp) - ((tcp_snd_cwnd(tp) * hstcp_aimd_vals[ca->ai].md) >> 8), 2U); in hstcp_ssthresh()
|
H A D | tcp_veno.c | 149 target_cwnd = (u64)tcp_snd_cwnd(tp) * veno->basertt; in tcp_veno_cong_avoid() 153 veno->diff = (tcp_snd_cwnd(tp) << V_PARAM_SHIFT) - target_cwnd; in tcp_veno_cong_avoid() 167 tcp_cong_avoid_ai(tp, tcp_snd_cwnd(tp), acked); in tcp_veno_cong_avoid() 172 if (tp->snd_cwnd_cnt >= tcp_snd_cwnd(tp)) { in tcp_veno_cong_avoid() 174 tcp_snd_cwnd(tp) < tp->snd_cwnd_clamp) { in tcp_veno_cong_avoid() 175 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in tcp_veno_cong_avoid() 184 if (tcp_snd_cwnd(tp) < 2) in tcp_veno_cong_avoid() 186 else if (tcp_snd_cwnd(tp) > tp->snd_cwnd_clamp) in tcp_veno_cong_avoid() 202 return max(tcp_snd_cwnd(tp) * 4 / 5, 2U); in tcp_veno_ssthresh() 205 return max(tcp_snd_cwnd(tp) >> 1U, 2U); in tcp_veno_ssthresh()
|
H A D | tcp_cdg.c | 164 tcp_snd_cwnd(tp)); in tcp_cdg_hystart_update() 165 tp->snd_ssthresh = tcp_snd_cwnd(tp); in tcp_cdg_hystart_update() 183 tcp_snd_cwnd(tp)); in tcp_cdg_hystart_update() 184 tp->snd_ssthresh = tcp_snd_cwnd(tp); in tcp_cdg_hystart_update() 255 ca->shadow_wnd = max(ca->shadow_wnd, tcp_snd_cwnd(tp)); in tcp_cdg_backoff() 288 ca->shadow_wnd = min(ca->shadow_wnd, tcp_snd_cwnd(tp)); in tcp_cdg_cong_avoid() 292 prior_snd_cwnd = tcp_snd_cwnd(tp); in tcp_cdg_cong_avoid() 295 incr = tcp_snd_cwnd(tp) - prior_snd_cwnd; in tcp_cdg_cong_avoid() 334 return max(2U, (tcp_snd_cwnd(tp) * min(1024U, backoff_beta)) >> 10); in tcp_cdg_ssthresh() 337 return tcp_snd_cwnd(tp); in tcp_cdg_ssthresh() [all …]
|
H A D | tcp_vegas.c | 162 return min(tp->snd_ssthresh, tcp_snd_cwnd(tp)); in tcp_vegas_ssthresh() 220 target_cwnd = (u64)tcp_snd_cwnd(tp) * vegas->baseRTT; in tcp_vegas_cong_avoid() 227 diff = tcp_snd_cwnd(tp) * (rtt-vegas->baseRTT) / vegas->baseRTT; in tcp_vegas_cong_avoid() 241 tcp_snd_cwnd_set(tp, min(tcp_snd_cwnd(tp), in tcp_vegas_cong_avoid() 258 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) - 1); in tcp_vegas_cong_avoid() 265 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in tcp_vegas_cong_avoid() 273 if (tcp_snd_cwnd(tp) < 2) in tcp_vegas_cong_avoid() 275 else if (tcp_snd_cwnd(tp) > tp->snd_cwnd_clamp) in tcp_vegas_cong_avoid()
|
H A D | tcp_hybla.c | 140 increment = ca->rho2_7ls / tcp_snd_cwnd(tp); in hybla_cong_avoid() 146 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + (increment >> 7)); in hybla_cong_avoid() 151 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in hybla_cong_avoid() 156 if (increment == 0 && odd == 0 && tp->snd_cwnd_cnt >= tcp_snd_cwnd(tp)) { in hybla_cong_avoid() 157 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in hybla_cong_avoid() 162 tcp_snd_cwnd_set(tp, min(tcp_snd_cwnd(tp), tp->snd_ssthresh)); in hybla_cong_avoid() 164 tcp_snd_cwnd_set(tp, min(tcp_snd_cwnd(tp), tp->snd_cwnd_clamp)); in hybla_cong_avoid()
|
H A D | tcp_bic.c | 153 bictcp_update(ca, tcp_snd_cwnd(tp)); in bictcp_cong_avoid() 169 if (tcp_snd_cwnd(tp) < ca->last_max_cwnd && fast_convergence) in bictcp_recalc_ssthresh() 170 ca->last_max_cwnd = (tcp_snd_cwnd(tp) * (BICTCP_BETA_SCALE + beta)) in bictcp_recalc_ssthresh() 173 ca->last_max_cwnd = tcp_snd_cwnd(tp); in bictcp_recalc_ssthresh() 175 if (tcp_snd_cwnd(tp) <= low_window) in bictcp_recalc_ssthresh() 176 return max(tcp_snd_cwnd(tp) >> 1U, 2U); in bictcp_recalc_ssthresh() 178 return max((tcp_snd_cwnd(tp) * beta) / BICTCP_BETA_SCALE, 2U); in bictcp_recalc_ssthresh()
|
H A D | tcp_nv.c | 200 cnt = tcp_snd_cwnd(tp) << -ca->cwnd_growth_factor; in tcpnv_cong_avoid() 203 cnt = max(4U, tcp_snd_cwnd(tp) >> ca->cwnd_growth_factor); in tcpnv_cong_avoid() 212 return max((tcp_snd_cwnd(tp) * nv_loss_dec_factor) >> 10, 2U); in tcpnv_recalc_ssthresh() 260 if (ca->nv_catchup && tcp_snd_cwnd(tp) >= nv_min_cwnd) { in tcpnv_acked() 374 if (tcp_snd_cwnd(tp) > max_win) { in tcpnv_acked() 401 if (tcp_snd_cwnd(tp) - max_win > 2) { in tcpnv_acked() 405 dec = max(2U, ((tcp_snd_cwnd(tp) - max_win) * in tcpnv_acked() 407 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) - dec); in tcpnv_acked() 414 } else if (tcp_snd_cwnd(tp) <= max_win - nv_pad_buffer) { in tcpnv_acked() 447 if (tcp_snd_cwnd(tp) < nv_min_cwnd) in tcpnv_acked()
|
H A D | tcp_cubic.c | 337 bictcp_update(ca, tcp_snd_cwnd(tp), acked); in cubictcp_cong_avoid() 349 if (tcp_snd_cwnd(tp) < ca->last_max_cwnd && fast_convergence) in cubictcp_recalc_ssthresh() 350 ca->last_max_cwnd = (tcp_snd_cwnd(tp) * (BICTCP_BETA_SCALE + beta)) in cubictcp_recalc_ssthresh() 353 ca->last_max_cwnd = tcp_snd_cwnd(tp); in cubictcp_recalc_ssthresh() 355 return max((tcp_snd_cwnd(tp) * beta) / BICTCP_BETA_SCALE, 2U); in cubictcp_recalc_ssthresh() 416 ca->delay_min, hystart_ack_delay(sk), tcp_snd_cwnd(tp)); in hystart_update() 421 tcp_snd_cwnd(tp)); in hystart_update() 422 tp->snd_ssthresh = tcp_snd_cwnd(tp); in hystart_update() 441 tcp_snd_cwnd(tp)); in hystart_update() 442 tp->snd_ssthresh = tcp_snd_cwnd(tp); in hystart_update() [all …]
|
H A D | tcp_scalable.c | 30 tcp_cong_avoid_ai(tp, min(tcp_snd_cwnd(tp), TCP_SCALABLE_AI_CNT), in tcp_scalable_cong_avoid() 38 return max(tcp_snd_cwnd(tp) - (tcp_snd_cwnd(tp)>>TCP_SCALABLE_MD_SCALE), 2U); in tcp_scalable_ssthresh()
|
H A D | tcp_dctcp.c | 123 ca->loss_cwnd = tcp_snd_cwnd(tp); in dctcp_update_alpha() 124 return max(tcp_snd_cwnd(tp) - ((tcp_snd_cwnd(tp) * ca->dctcp_alpha) >> 11U), 2U); in dctcp_update_alpha() 179 ca->loss_cwnd = tcp_snd_cwnd(tp); in dctcp_state() 180 tp->snd_ssthresh = max(tcp_snd_cwnd(tp) >> 1U, 2U); in dctcp_state() 248 return max(tcp_snd_cwnd(tp), ca->loss_cwnd);
|
H A D | tcp_illinois.c | 227 if (tcp_snd_cwnd(tp) < win_thresh) { in update_params() 287 if (delta >= tcp_snd_cwnd(tp)) { in tcp_illinois_cong_avoid() 288 tcp_snd_cwnd_set(tp, min(tcp_snd_cwnd(tp) + delta / tcp_snd_cwnd(tp), in tcp_illinois_cong_avoid() 302 decr = (tcp_snd_cwnd(tp) * ca->beta) >> BETA_SHIFT; in tcp_illinois_ssthresh() 303 return max(tcp_snd_cwnd(tp) - decr, 2U); in tcp_illinois_ssthresh()
|
H A D | tcp_cong.c | 456 u32 cwnd = min(tcp_snd_cwnd(tp) + acked, tp->snd_ssthresh); in tcp_slow_start() 458 acked -= cwnd - tcp_snd_cwnd(tp); in tcp_slow_start() 473 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in tcp_cong_avoid_ai() 481 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + delta); in tcp_cong_avoid_ai() 483 tcp_snd_cwnd_set(tp, min(tcp_snd_cwnd(tp), tp->snd_cwnd_clamp)); in tcp_cong_avoid_ai() 508 tcp_cong_avoid_ai(tp, tcp_snd_cwnd(tp), acked); in tcp_reno_cong_avoid() 517 return max(tcp_snd_cwnd(tp) >> 1U, 2U); in tcp_reno_ssthresh() 525 return max(tcp_snd_cwnd(tp), tp->prior_cwnd); in tcp_reno_undo_cwnd()
|
H A D | tcp_htcp.c | 127 if (ca->packetcount >= tcp_snd_cwnd(tp) - (ca->alpha >> 7 ? : 1) && in measure_achieved_throughput() 228 return max((tcp_snd_cwnd(tp) * ca->beta) >> 7, 2U); in htcp_recalc_ssthresh() 245 if ((tp->snd_cwnd_cnt * ca->alpha)>>7 >= tcp_snd_cwnd(tp)) { in htcp_cong_avoid() 246 if (tcp_snd_cwnd(tp) < tp->snd_cwnd_clamp) in htcp_cong_avoid() 247 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in htcp_cong_avoid()
|
H A D | tcp_bbr.c | 279 bw = (u64)tcp_snd_cwnd(tp) * BW_UNIT; in bbr_init_pacing_rate_from_rtt() 327 bbr->prior_cwnd = tcp_snd_cwnd(tp); /* this cwnd is good enough */ in bbr_save_cwnd() 329 bbr->prior_cwnd = max(bbr->prior_cwnd, tcp_snd_cwnd(tp)); in bbr_save_cwnd() 486 u32 cwnd = tcp_snd_cwnd(tp); in bbr_set_cwnd_to_recover_or_restore() 524 u32 cwnd = tcp_snd_cwnd(tp), target_cwnd = 0; in bbr_set_cwnd() 550 tcp_snd_cwnd_set(tp, min(tcp_snd_cwnd(tp), bbr_cwnd_min_target)); in bbr_set_cwnd() 860 extra_acked = min(extra_acked, tcp_snd_cwnd(tp)); in bbr_update_ack_aggregation() 918 tcp_snd_cwnd_set(tp, max(tcp_snd_cwnd(tp), bbr->prior_cwnd)); in bbr_check_probe_rtt_done() 1097 return tcp_snd_cwnd(tcp_sk(sk)); in bbr_undo_cwnd()
|
H A D | tcp_lp.c | 300 tcp_snd_cwnd(tp), lp->remote_hz, lp->owd_min, lp->owd_max, in tcp_lp_pkts_acked() 321 tcp_snd_cwnd_set(tp, max(tcp_snd_cwnd(tp) >> 1U, 1U)); in tcp_lp_pkts_acked()
|
H A D | tcp_metrics.c | 411 if (val && (tcp_snd_cwnd(tp) >> 1) > val) in tcp_update_metrics() 413 tcp_snd_cwnd(tp) >> 1); in tcp_update_metrics() 417 if (tcp_snd_cwnd(tp) > val) in tcp_update_metrics() 419 tcp_snd_cwnd(tp)); in tcp_update_metrics() 427 max(tcp_snd_cwnd(tp) >> 1, tp->snd_ssthresh)); in tcp_update_metrics() 430 tcp_metric_set(tm, TCP_METRIC_CWND, (val + tcp_snd_cwnd(tp)) >> 1); in tcp_update_metrics()
|
H A D | tcp_output.c | 148 u32 cwnd = tcp_snd_cwnd(tp); in tcp_cwnd_restart() 1074 tcp_snd_cwnd(tp) > tcp_packets_in_flight(tp)) { in tcp_tsq_write() 1904 if (win_used < tcp_snd_cwnd(tp)) { in tcp_cwnd_application_limited() 1906 tcp_snd_cwnd_set(tp, (tcp_snd_cwnd(tp) + win_used) >> 1); in tcp_cwnd_application_limited() 2086 cwnd = tcp_snd_cwnd(tp); in tcp_cwnd_test() 2236 BUG_ON(tcp_snd_cwnd(tp) <= in_flight); in tcp_tso_should_defer() 2241 cong_win = (tcp_snd_cwnd(tp) - in_flight) * tp->mss_cache; in tcp_tso_should_defer() 2255 u32 chunk = min(tp->snd_wnd, tcp_snd_cwnd(tp) * tp->mss_cache); in tcp_tso_should_defer() 2449 tcp_snd_cwnd(tp) < 11 || in tcp_mtu_probe() 2485 if (tcp_packets_in_flight(tp) + 2 > tcp_snd_cwnd(tp)) { in tcp_mtu_probe() [all …]
|
H A D | tcp_rate.c | 203 tcp_packets_in_flight(tp) < tcp_snd_cwnd(tp) && in tcp_rate_check_app_limited()
|
H A D | tcp_input.c | 438 nr_segs = max_t(u32, TCP_INIT_CWND, tcp_snd_cwnd(tp)); in tcp_sndbuf_expand() 953 if (tcp_snd_cwnd(tp) < tp->snd_ssthresh / 2) in tcp_update_pacing_rate() 958 rate *= max(tcp_snd_cwnd(tp), tp->packets_out); in tcp_update_pacing_rate() 2205 tp->prior_cwnd = tcp_snd_cwnd(tp); in tcp_enter_loss() 2545 tcp_snd_cwnd(tp), tcp_left_out(tp), in DBGUNDO() 2554 tcp_snd_cwnd(tp), tcp_left_out(tp), in DBGUNDO() 2697 tp->prior_cwnd = tcp_snd_cwnd(tp); in tcp_init_cwnd_reduction() 2808 val = (u64)tcp_snd_cwnd(tp) * tcp_mss_to_mtu(sk, tp->mss_cache); in tcp_mtup_probe_success() 3165 tcp_snd_cwnd_set(tp, tcp_snd_cwnd(tp) + 1); in tcp_fastretrans_alert() 5699 if (tcp_packets_in_flight(tp) >= tcp_snd_cwnd(tp)) in tcp_should_expand_sndbuf()
|
H A D | tcp.c | 4080 info->tcpi_snd_cwnd = tcp_snd_cwnd(tp); in tcp_get_info() 4264 nla_put_u32(stats, TCP_NLA_SND_CWND, tcp_snd_cwnd(tp)); in tcp_get_timestamping_opt_stats()
|
/linux/include/net/ |
H A D | tcp.h | 1312 static inline u32 tcp_snd_cwnd(const struct tcp_sock *tp) in tcp_snd_cwnd() function 1325 return tcp_snd_cwnd(tp) < tp->snd_ssthresh; in tcp_in_slow_start() 1351 ((tcp_snd_cwnd(tp) >> 1) + in tcp_current_ssthresh() 1352 (tcp_snd_cwnd(tp) >> 2))); in tcp_current_ssthresh() 1397 return tcp_snd_cwnd(tp) < 2 * tp->max_packets_out; in tcp_is_cwnd_limited()
|
/linux/Documentation/networking/net_cachelines/ |
H A D | tcp_sock.rst | 92 … snd_cwnd read_mostly read_mostly tcp_snd_cwnd,tcp_rate_check_…
|
/linux/include/trace/events/ |
H A D | tcp.h | 310 __entry->snd_cwnd = tcp_snd_cwnd(tp);
|
/linux/net/ipv6/ |
H A D | tcp_ipv6.c | 2235 tcp_snd_cwnd(tp),
|