|
@@ -264,6 +264,7 @@ void tcp_delack_timer_handler(struct sock *sk)
|
|
icsk->icsk_ack.pingpong = 0;
|
|
icsk->icsk_ack.pingpong = 0;
|
|
icsk->icsk_ack.ato = TCP_ATO_MIN;
|
|
icsk->icsk_ack.ato = TCP_ATO_MIN;
|
|
}
|
|
}
|
|
|
|
+ tcp_mstamp_refresh(tcp_sk(sk));
|
|
tcp_send_ack(sk);
|
|
tcp_send_ack(sk);
|
|
__NET_INC_STATS(sock_net(sk), LINUX_MIB_DELAYEDACKS);
|
|
__NET_INC_STATS(sock_net(sk), LINUX_MIB_DELAYEDACKS);
|
|
}
|
|
}
|
|
@@ -632,6 +633,7 @@ static void tcp_keepalive_timer (struct timer_list *t)
|
|
goto out;
|
|
goto out;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ tcp_mstamp_refresh(tp);
|
|
if (sk->sk_state == TCP_FIN_WAIT2 && sock_flag(sk, SOCK_DEAD)) {
|
|
if (sk->sk_state == TCP_FIN_WAIT2 && sock_flag(sk, SOCK_DEAD)) {
|
|
if (tp->linger2 >= 0) {
|
|
if (tp->linger2 >= 0) {
|
|
const int tmo = tcp_fin_time(sk) - TCP_TIMEWAIT_LEN;
|
|
const int tmo = tcp_fin_time(sk) - TCP_TIMEWAIT_LEN;
|