summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorDaniel Borkmann <dborkman@redhat.com>2014-04-02 22:52:56 +0400
committerDavid S. Miller <davem@davemloft.net>2014-04-03 22:29:11 +0400
commit0f97ede45e65ffb6eab856313e79b14b902bcfaa (patch)
tree7f078a5bd8491b57b06044a592d28a8b300746eb /net
parentbdab82759b8e3620096d6db46dc1cac38a52d779 (diff)
downloadlinux-0f97ede45e65ffb6eab856313e79b14b902bcfaa.tar.xz
packet: report tx_dropped in packet_direct_xmit
Since commit 015f0688f57c ("net: net: add a core netdev->tx_dropped counter"), we can now account for TX drops from within the core stack instead of drivers. Therefore, fix packet_direct_xmit() and increase drop count when we encounter a problem before driver's xmit function was called (we do not want to doubly account for it). Suggested-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Daniel Borkmann <dborkman@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/packet/af_packet.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
index 01039d2b1695..c81a9719b5b2 100644
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -275,6 +275,7 @@ static int packet_direct_xmit(struct sk_buff *skb)
return ret;
drop:
+ atomic_long_inc(&dev->tx_dropped);
kfree_skb(skb);
return NET_XMIT_DROP;
}