From b247501264c1472c5318b4d2ce7a875e32933111 Mon Sep 17 00:00:00 2001 From: Willem de Bruijn Date: Fri, 30 Sep 2011 10:38:28 +0000 Subject: [PATCH] --- yaml --- r: 264262 b: refs/heads/master c: 7091fbd82cd5686444ffe9935ed6a8190101fe9d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/net/packet/af_packet.c | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 63b00a6ae9c3..c25b798d27d0 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d0e5d83284dac15c015bb48115b6780f5a6413cd +refs/heads/master: 7091fbd82cd5686444ffe9935ed6a8190101fe9d diff --git a/trunk/net/packet/af_packet.c b/trunk/net/packet/af_packet.c index c698cec0a445..fabb4fafa281 100644 --- a/trunk/net/packet/af_packet.c +++ b/trunk/net/packet/af_packet.c @@ -961,7 +961,10 @@ static int packet_rcv(struct sk_buff *skb, struct net_device *dev, return 0; drop_n_acct: - po->stats.tp_drops = atomic_inc_return(&sk->sk_drops); + spin_lock(&sk->sk_receive_queue.lock); + po->stats.tp_drops++; + atomic_inc(&sk->sk_drops); + spin_unlock(&sk->sk_receive_queue.lock); drop_n_restore: if (skb_head != skb->data && skb_shared(skb)) {