diff options
Diffstat (limited to 'net/ipv6/udp.c')
| -rw-r--r-- | net/ipv6/udp.c | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index 99d0077b56b..07e2bfef684 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c @@ -394,6 +394,17 @@ try_again:  	}  	if (unlikely(err)) {  		trace_kfree_skb(skb, udpv6_recvmsg); +		if (!peeked) { +			atomic_inc(&sk->sk_drops); +			if (is_udp4) +				UDP_INC_STATS_USER(sock_net(sk), +						   UDP_MIB_INERRORS, +						   is_udplite); +			else +				UDP6_INC_STATS_USER(sock_net(sk), +						    UDP_MIB_INERRORS, +						    is_udplite); +		}  		goto out_free;  	}  	if (!peeked) {  |