tcp: Remove tw->tw_peer
No longer used. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -506,7 +506,6 @@ struct tcp_timewait_sock {
|
|||||||
u32 tw_rcv_wnd;
|
u32 tw_rcv_wnd;
|
||||||
u32 tw_ts_recent;
|
u32 tw_ts_recent;
|
||||||
long tw_ts_recent_stamp;
|
long tw_ts_recent_stamp;
|
||||||
struct inet_peer *tw_peer;
|
|
||||||
#ifdef CONFIG_TCP_MD5SIG
|
#ifdef CONFIG_TCP_MD5SIG
|
||||||
struct tcp_md5sig_key *tw_md5_key;
|
struct tcp_md5sig_key *tw_md5_key;
|
||||||
#endif
|
#endif
|
||||||
|
@@ -267,12 +267,9 @@ void tcp_time_wait(struct sock *sk, int state, int timeo)
|
|||||||
const struct inet_connection_sock *icsk = inet_csk(sk);
|
const struct inet_connection_sock *icsk = inet_csk(sk);
|
||||||
const struct tcp_sock *tp = tcp_sk(sk);
|
const struct tcp_sock *tp = tcp_sk(sk);
|
||||||
bool recycle_ok = false;
|
bool recycle_ok = false;
|
||||||
bool recycle_on = false;
|
|
||||||
|
|
||||||
if (tcp_death_row.sysctl_tw_recycle && tp->rx_opt.ts_recent_stamp) {
|
if (tcp_death_row.sysctl_tw_recycle && tp->rx_opt.ts_recent_stamp)
|
||||||
recycle_ok = tcp_remember_stamp(sk);
|
recycle_ok = tcp_remember_stamp(sk);
|
||||||
recycle_on = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (tcp_death_row.tw_count < tcp_death_row.sysctl_max_tw_buckets)
|
if (tcp_death_row.tw_count < tcp_death_row.sysctl_max_tw_buckets)
|
||||||
tw = inet_twsk_alloc(sk, state);
|
tw = inet_twsk_alloc(sk, state);
|
||||||
@@ -281,7 +278,6 @@ void tcp_time_wait(struct sock *sk, int state, int timeo)
|
|||||||
struct tcp_timewait_sock *tcptw = tcp_twsk((struct sock *)tw);
|
struct tcp_timewait_sock *tcptw = tcp_twsk((struct sock *)tw);
|
||||||
const int rto = (icsk->icsk_rto << 2) - (icsk->icsk_rto >> 1);
|
const int rto = (icsk->icsk_rto << 2) - (icsk->icsk_rto >> 1);
|
||||||
struct inet_sock *inet = inet_sk(sk);
|
struct inet_sock *inet = inet_sk(sk);
|
||||||
struct inet_peer *peer = NULL;
|
|
||||||
|
|
||||||
tw->tw_transparent = inet->transparent;
|
tw->tw_transparent = inet->transparent;
|
||||||
tw->tw_rcv_wscale = tp->rx_opt.rcv_wscale;
|
tw->tw_rcv_wscale = tp->rx_opt.rcv_wscale;
|
||||||
@@ -305,12 +301,6 @@ void tcp_time_wait(struct sock *sk, int state, int timeo)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (recycle_on)
|
|
||||||
peer = icsk->icsk_af_ops->get_peer(sk);
|
|
||||||
tcptw->tw_peer = peer;
|
|
||||||
if (peer)
|
|
||||||
atomic_inc(&peer->refcnt);
|
|
||||||
|
|
||||||
#ifdef CONFIG_TCP_MD5SIG
|
#ifdef CONFIG_TCP_MD5SIG
|
||||||
/*
|
/*
|
||||||
* The timewait bucket does not have the key DB from the
|
* The timewait bucket does not have the key DB from the
|
||||||
@@ -362,11 +352,9 @@ void tcp_time_wait(struct sock *sk, int state, int timeo)
|
|||||||
|
|
||||||
void tcp_twsk_destructor(struct sock *sk)
|
void tcp_twsk_destructor(struct sock *sk)
|
||||||
{
|
{
|
||||||
|
#ifdef CONFIG_TCP_MD5SIG
|
||||||
struct tcp_timewait_sock *twsk = tcp_twsk(sk);
|
struct tcp_timewait_sock *twsk = tcp_twsk(sk);
|
||||||
|
|
||||||
if (twsk->tw_peer)
|
|
||||||
inet_putpeer(twsk->tw_peer);
|
|
||||||
#ifdef CONFIG_TCP_MD5SIG
|
|
||||||
if (twsk->tw_md5_key) {
|
if (twsk->tw_md5_key) {
|
||||||
tcp_free_md5sig_pool();
|
tcp_free_md5sig_pool();
|
||||||
kfree_rcu(twsk->tw_md5_key, rcu);
|
kfree_rcu(twsk->tw_md5_key, rcu);
|
||||||
|
Reference in New Issue
Block a user