mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-07 13:53:24 +00:00
tcp: remove unused min_cwnd member of tcp_congestion_ops
Commit 684bad1107
"tcp: use PRR to reduce cwin in CWR state" removed all
calls to min_cwnd, so we can safely remove it.
Also, remove tcp_reno_min_cwnd because it was only used for min_cwnd.
Signed-off-by: Stanislav Fomichev <stfomichev@yandex-team.ru>
Acked-by: Yuchung Cheng <ycheng@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f93f160b5a
commit
45f7435968
@ -30,7 +30,7 @@ A congestion control mechanism can be registered through functions in
|
||||
tcp_cong.c. The functions used by the congestion control mechanism are
|
||||
registered via passing a tcp_congestion_ops struct to
|
||||
tcp_register_congestion_control. As a minimum name, ssthresh,
|
||||
cong_avoid, min_cwnd must be valid.
|
||||
cong_avoid must be valid.
|
||||
|
||||
Private data for a congestion control mechanism is stored in tp->ca_priv.
|
||||
tcp_ca(tp) returns a pointer to this space. This is preallocated space - it
|
||||
|
@ -791,8 +791,6 @@ struct tcp_congestion_ops {
|
||||
|
||||
/* return slow start threshold (required) */
|
||||
u32 (*ssthresh)(struct sock *sk);
|
||||
/* lower bound for congestion window (optional) */
|
||||
u32 (*min_cwnd)(const struct sock *sk);
|
||||
/* do new cwnd calculation (required) */
|
||||
void (*cong_avoid)(struct sock *sk, u32 ack, u32 acked, u32 in_flight);
|
||||
/* call before changing ca_state (optional) */
|
||||
@ -827,7 +825,6 @@ void tcp_cong_avoid_ai(struct tcp_sock *tp, u32 w);
|
||||
extern struct tcp_congestion_ops tcp_init_congestion_ops;
|
||||
u32 tcp_reno_ssthresh(struct sock *sk);
|
||||
void tcp_reno_cong_avoid(struct sock *sk, u32 ack, u32 acked, u32 in_flight);
|
||||
u32 tcp_reno_min_cwnd(const struct sock *sk);
|
||||
extern struct tcp_congestion_ops tcp_reno;
|
||||
|
||||
static inline void tcp_set_ca_state(struct sock *sk, const u8 ca_state)
|
||||
|
@ -362,21 +362,12 @@ u32 tcp_reno_ssthresh(struct sock *sk)
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(tcp_reno_ssthresh);
|
||||
|
||||
/* Lower bound on congestion window with halving. */
|
||||
u32 tcp_reno_min_cwnd(const struct sock *sk)
|
||||
{
|
||||
const struct tcp_sock *tp = tcp_sk(sk);
|
||||
return tp->snd_ssthresh/2;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(tcp_reno_min_cwnd);
|
||||
|
||||
struct tcp_congestion_ops tcp_reno = {
|
||||
.flags = TCP_CONG_NON_RESTRICTED,
|
||||
.name = "reno",
|
||||
.owner = THIS_MODULE,
|
||||
.ssthresh = tcp_reno_ssthresh,
|
||||
.cong_avoid = tcp_reno_cong_avoid,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
};
|
||||
|
||||
/* Initial congestion control used (until SYN)
|
||||
@ -388,6 +379,5 @@ struct tcp_congestion_ops tcp_init_congestion_ops = {
|
||||
.owner = THIS_MODULE,
|
||||
.ssthresh = tcp_reno_ssthresh,
|
||||
.cong_avoid = tcp_reno_cong_avoid,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
};
|
||||
EXPORT_SYMBOL_GPL(tcp_init_congestion_ops);
|
||||
|
@ -162,7 +162,6 @@ static struct tcp_congestion_ops tcp_highspeed __read_mostly = {
|
||||
.init = hstcp_init,
|
||||
.ssthresh = hstcp_ssthresh,
|
||||
.cong_avoid = hstcp_cong_avoid,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
|
||||
.owner = THIS_MODULE,
|
||||
.name = "highspeed"
|
||||
|
@ -166,7 +166,6 @@ static void hybla_cong_avoid(struct sock *sk, u32 ack, u32 acked,
|
||||
static struct tcp_congestion_ops tcp_hybla __read_mostly = {
|
||||
.init = hybla_init,
|
||||
.ssthresh = tcp_reno_ssthresh,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
.cong_avoid = hybla_cong_avoid,
|
||||
.set_state = hybla_state,
|
||||
|
||||
|
@ -328,7 +328,6 @@ static struct tcp_congestion_ops tcp_illinois __read_mostly = {
|
||||
.flags = TCP_CONG_RTT_STAMP,
|
||||
.init = tcp_illinois_init,
|
||||
.ssthresh = tcp_illinois_ssthresh,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
.cong_avoid = tcp_illinois_cong_avoid,
|
||||
.set_state = tcp_illinois_state,
|
||||
.get_info = tcp_illinois_info,
|
||||
|
@ -319,7 +319,6 @@ static struct tcp_congestion_ops tcp_lp __read_mostly = {
|
||||
.init = tcp_lp_init,
|
||||
.ssthresh = tcp_reno_ssthresh,
|
||||
.cong_avoid = tcp_lp_cong_avoid,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
.pkts_acked = tcp_lp_pkts_acked,
|
||||
|
||||
.owner = THIS_MODULE,
|
||||
|
@ -39,7 +39,6 @@ static u32 tcp_scalable_ssthresh(struct sock *sk)
|
||||
static struct tcp_congestion_ops tcp_scalable __read_mostly = {
|
||||
.ssthresh = tcp_scalable_ssthresh,
|
||||
.cong_avoid = tcp_scalable_cong_avoid,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
|
||||
.owner = THIS_MODULE,
|
||||
.name = "scalable",
|
||||
|
@ -310,7 +310,6 @@ static struct tcp_congestion_ops tcp_vegas __read_mostly = {
|
||||
.init = tcp_vegas_init,
|
||||
.ssthresh = tcp_reno_ssthresh,
|
||||
.cong_avoid = tcp_vegas_cong_avoid,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
.pkts_acked = tcp_vegas_pkts_acked,
|
||||
.set_state = tcp_vegas_state,
|
||||
.cwnd_event = tcp_vegas_cwnd_event,
|
||||
|
@ -276,7 +276,6 @@ static struct tcp_congestion_ops tcp_westwood __read_mostly = {
|
||||
.init = tcp_westwood_init,
|
||||
.ssthresh = tcp_reno_ssthresh,
|
||||
.cong_avoid = tcp_reno_cong_avoid,
|
||||
.min_cwnd = tcp_westwood_bw_rttmin,
|
||||
.cwnd_event = tcp_westwood_event,
|
||||
.get_info = tcp_westwood_info,
|
||||
.pkts_acked = tcp_westwood_pkts_acked,
|
||||
|
@ -231,7 +231,6 @@ static struct tcp_congestion_ops tcp_yeah __read_mostly = {
|
||||
.init = tcp_yeah_init,
|
||||
.ssthresh = tcp_yeah_ssthresh,
|
||||
.cong_avoid = tcp_yeah_cong_avoid,
|
||||
.min_cwnd = tcp_reno_min_cwnd,
|
||||
.set_state = tcp_vegas_state,
|
||||
.cwnd_event = tcp_vegas_cwnd_event,
|
||||
.get_info = tcp_vegas_get_info,
|
||||
|
Loading…
Reference in New Issue
Block a user