aboutsummaryrefslogtreecommitdiffstats
path: root/net/packet/af_packet.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/packet/af_packet.c')
-rw-r--r--net/packet/af_packet.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c
index 25e68f56b4ba..dac91abf4c0f 100644
--- a/net/packet/af_packet.c
+++ b/net/packet/af_packet.c
@@ -1720,7 +1720,10 @@ static int packet_rcv(struct sk_buff *skb, struct net_device *dev,
1720 return 0; 1720 return 0;
1721 1721
1722drop_n_acct: 1722drop_n_acct:
1723 po->stats.tp_drops = atomic_inc_return(&sk->sk_drops); 1723 spin_lock(&sk->sk_receive_queue.lock);
1724 po->stats.tp_drops++;
1725 atomic_inc(&sk->sk_drops);
1726 spin_unlock(&sk->sk_receive_queue.lock);
1724 1727
1725drop_n_restore: 1728drop_n_restore:
1726 if (skb_head != skb->data && skb_shared(skb)) { 1729 if (skb_head != skb->data && skb_shared(skb)) {