diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2010-09-20 04:12:11 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-09-20 21:08:58 +0400 |
commit | 8990f468ae9010ab0af4be8f51bf7ab833a67202 (patch) | |
tree | e84ad358ed67da6011b1e20f3d8039d1f9f07e4a /net/ipv4/ipip.c | |
parent | 462fb2af9788a82a534f8184abfde31574e1cfa0 (diff) | |
download | linux-8990f468ae9010ab0af4be8f51bf7ab833a67202.tar.xz |
net: rx_dropped accounting
Under load, netif_rx() can drop incoming packets but administrators dont
have a chance to spot which device needs some tuning (RPS activation for
example)
This patch adds rx_dropped accounting in vlans and tunnels.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/ipip.c')
-rw-r--r-- | net/ipv4/ipip.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv4/ipip.c b/net/ipv4/ipip.c index 8de8888dc95a..babd25278106 100644 --- a/net/ipv4/ipip.c +++ b/net/ipv4/ipip.c @@ -377,7 +377,10 @@ static int ipip_rcv(struct sk_buff *skb) skb_tunnel_rx(skb, tunnel->dev); ipip_ecn_decapsulate(iph, skb); - netif_rx(skb); + + if (netif_rx(skb) == NET_RX_DROP) + tunnel->dev->stats.rx_dropped++; + rcu_read_unlock(); return 0; } |