diff options
author | Ilpo Järvinen <ilpo.jarvinen@helsinki.fi> | 2008-11-25 00:27:22 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-11-25 00:27:22 -0500 |
commit | 111cc8b913b42ef07793648b1699288332f273e1 (patch) | |
tree | f74fb48630319113247b5ee0c660b24f2af160d9 /net | |
parent | 92ee76b6d99bfcdab6162816c9025541ef7248eb (diff) |
tcp: add some mibs to track collapsing
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/proc.c | 3 | ||||
-rw-r--r-- | net/ipv4/tcp_input.c | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/net/ipv4/proc.c b/net/ipv4/proc.c index a631a1f110ca..731789bb499f 100644 --- a/net/ipv4/proc.c +++ b/net/ipv4/proc.c | |||
@@ -234,6 +234,9 @@ static const struct snmp_mib snmp4_net_list[] = { | |||
234 | SNMP_MIB_ITEM("TCPSpuriousRTOs", LINUX_MIB_TCPSPURIOUSRTOS), | 234 | SNMP_MIB_ITEM("TCPSpuriousRTOs", LINUX_MIB_TCPSPURIOUSRTOS), |
235 | SNMP_MIB_ITEM("TCPMD5NotFound", LINUX_MIB_TCPMD5NOTFOUND), | 235 | SNMP_MIB_ITEM("TCPMD5NotFound", LINUX_MIB_TCPMD5NOTFOUND), |
236 | SNMP_MIB_ITEM("TCPMD5Unexpected", LINUX_MIB_TCPMD5UNEXPECTED), | 236 | SNMP_MIB_ITEM("TCPMD5Unexpected", LINUX_MIB_TCPMD5UNEXPECTED), |
237 | SNMP_MIB_ITEM("TCPSackShifted", LINUX_MIB_SACKSHIFTED), | ||
238 | SNMP_MIB_ITEM("TCPSackMerged", LINUX_MIB_SACKMERGED), | ||
239 | SNMP_MIB_ITEM("TCPSackShiftFallback", LINUX_MIB_SACKSHIFTFALLBACK), | ||
237 | SNMP_MIB_SENTINEL | 240 | SNMP_MIB_SENTINEL |
238 | }; | 241 | }; |
239 | 242 | ||
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index e6291dde3348..9f8a80ba17bd 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c | |||
@@ -1415,6 +1415,7 @@ static int tcp_shifted_skb(struct sock *sk, struct sk_buff *prev, | |||
1415 | 1415 | ||
1416 | if (skb->len > 0) { | 1416 | if (skb->len > 0) { |
1417 | BUG_ON(!tcp_skb_pcount(skb)); | 1417 | BUG_ON(!tcp_skb_pcount(skb)); |
1418 | NET_INC_STATS_BH(sock_net(sk), LINUX_MIB_SACKSHIFTED); | ||
1418 | return 0; | 1419 | return 0; |
1419 | } | 1420 | } |
1420 | 1421 | ||
@@ -1436,6 +1437,8 @@ static int tcp_shifted_skb(struct sock *sk, struct sk_buff *prev, | |||
1436 | tcp_unlink_write_queue(skb, sk); | 1437 | tcp_unlink_write_queue(skb, sk); |
1437 | sk_wmem_free_skb(sk, skb); | 1438 | sk_wmem_free_skb(sk, skb); |
1438 | 1439 | ||
1440 | NET_INC_STATS_BH(sock_net(sk), LINUX_MIB_SACKMERGED); | ||
1441 | |||
1439 | return 1; | 1442 | return 1; |
1440 | } | 1443 | } |
1441 | 1444 | ||
@@ -1594,6 +1597,7 @@ noop: | |||
1594 | return skb; | 1597 | return skb; |
1595 | 1598 | ||
1596 | fallback: | 1599 | fallback: |
1600 | NET_INC_STATS_BH(sock_net(sk), LINUX_MIB_SACKSHIFTFALLBACK); | ||
1597 | return NULL; | 1601 | return NULL; |
1598 | } | 1602 | } |
1599 | 1603 | ||