summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMitsuru Chinen <mitch@linux.vnet.ibm.com>2007-11-05 21:29:17 -0800
committerDavid S. Miller <davem@sunset.davemloft.net>2007-11-07 04:08:54 -0800
commit7a0ff716c2282f4b8d89c65850a4f17399628154 (patch)
tree5959ca3f25d92115d577db63dc06920bf2ee6284
parent3f192b5c584b8ecddc6069717aaf36d8fa244713 (diff)
downloadlinux-stable-7a0ff716c2282f4b8d89c65850a4f17399628154.tar.gz
linux-stable-7a0ff716c2282f4b8d89c65850a4f17399628154.tar.bz2
linux-stable-7a0ff716c2282f4b8d89c65850a4f17399628154.zip
[IPv6] SNMP: Restore Udp6InErrors incrementation
As the checksum verification is postponed till user calls recv or poll, the inrementation of Udp6InErrors counter should be also postponed. Currently, it is postponed in non-blocking operation case. However it should be postponed in all case like the IPv4 code. Signed-off-by: Mitsuru Chinen <mitch@linux.vnet.ibm.com> Acked-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--net/ipv6/udp.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c
index caebad6ee510..8344d8c87219 100644
--- a/net/ipv6/udp.c
+++ b/net/ipv6/udp.c
@@ -205,12 +205,11 @@ out:
return err;
csum_copy_err:
+ UDP6_INC_STATS_USER(UDP_MIB_INERRORS, is_udplite);
skb_kill_datagram(sk, skb, flags);
- if (flags & MSG_DONTWAIT) {
- UDP6_INC_STATS_USER(UDP_MIB_INERRORS, is_udplite);
+ if (flags & MSG_DONTWAIT)
return -EAGAIN;
- }
goto try_again;
}