diff options
Diffstat (limited to 'net/ipv4/tcp_input.c')
-rw-r--r-- | net/ipv4/tcp_input.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index d51fa358b2b1..3d6156f07a8d 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c | |||
@@ -874,6 +874,7 @@ static void tcp_dsack_seen(struct tcp_sock *tp) | |||
874 | { | 874 | { |
875 | tp->rx_opt.sack_ok |= TCP_DSACK_SEEN; | 875 | tp->rx_opt.sack_ok |= TCP_DSACK_SEEN; |
876 | tp->rack.dsack_seen = 1; | 876 | tp->rack.dsack_seen = 1; |
877 | tp->dsack_dups++; | ||
877 | } | 878 | } |
878 | 879 | ||
879 | /* It's reordering when higher sequence was delivered (i.e. sacked) before | 880 | /* It's reordering when higher sequence was delivered (i.e. sacked) before |
@@ -905,8 +906,8 @@ static void tcp_check_sack_reordering(struct sock *sk, const u32 low_seq, | |||
905 | sock_net(sk)->ipv4.sysctl_tcp_max_reordering); | 906 | sock_net(sk)->ipv4.sysctl_tcp_max_reordering); |
906 | } | 907 | } |
907 | 908 | ||
908 | tp->rack.reord = 1; | ||
909 | /* This exciting event is worth to be remembered. 8) */ | 909 | /* This exciting event is worth to be remembered. 8) */ |
910 | tp->reord_seen++; | ||
910 | NET_INC_STATS(sock_net(sk), | 911 | NET_INC_STATS(sock_net(sk), |
911 | ts ? LINUX_MIB_TCPTSREORDER : LINUX_MIB_TCPSACKREORDER); | 912 | ts ? LINUX_MIB_TCPTSREORDER : LINUX_MIB_TCPSACKREORDER); |
912 | } | 913 | } |
@@ -1870,6 +1871,7 @@ static void tcp_check_reno_reordering(struct sock *sk, const int addend) | |||
1870 | 1871 | ||
1871 | tp->reordering = min_t(u32, tp->packets_out + addend, | 1872 | tp->reordering = min_t(u32, tp->packets_out + addend, |
1872 | sock_net(sk)->ipv4.sysctl_tcp_max_reordering); | 1873 | sock_net(sk)->ipv4.sysctl_tcp_max_reordering); |
1874 | tp->reord_seen++; | ||
1873 | NET_INC_STATS(sock_net(sk), LINUX_MIB_TCPRENOREORDER); | 1875 | NET_INC_STATS(sock_net(sk), LINUX_MIB_TCPRENOREORDER); |
1874 | } | 1876 | } |
1875 | 1877 | ||