diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2007-12-14 14:25:26 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 17:58:06 -0500 |
commit | 9055e051b8d4b266054fe511a65a9888d30fa64f (patch) | |
tree | d42c5bf77ec53aff70d8be3df875789db2112774 /net | |
parent | 8d614434ab77b440b69e66a9bd44e46e7194c34a (diff) |
[UDP]: Move udp_stats_in6 into net/ipv4/udp.c
Now that external users may increment the counters directly, we need
to ensure that udp_stats_in6 is always available. Otherwise we'd
either have to requrie the external users to be built as modules or
ipv6 to be built-in.
This isn't too bad because udp_stats_in6 is just a pair of pointers
plus an EXPORT, e.g., just 40 (16 + 24) bytes on x86-64.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv4/udp.c | 3 | ||||
-rw-r--r-- | net/ipv6/udp.c | 3 |
2 files changed, 3 insertions, 3 deletions
diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c index 9ed6393c65d9..3d6021585658 100644 --- a/net/ipv4/udp.c +++ b/net/ipv4/udp.c | |||
@@ -112,6 +112,9 @@ | |||
112 | DEFINE_SNMP_STAT(struct udp_mib, udp_statistics) __read_mostly; | 112 | DEFINE_SNMP_STAT(struct udp_mib, udp_statistics) __read_mostly; |
113 | EXPORT_SYMBOL(udp_statistics); | 113 | EXPORT_SYMBOL(udp_statistics); |
114 | 114 | ||
115 | DEFINE_SNMP_STAT(struct udp_mib, udp_stats_in6) __read_mostly; | ||
116 | EXPORT_SYMBOL(udp_stats_in6); | ||
117 | |||
115 | struct hlist_head udp_hash[UDP_HTABLE_SIZE]; | 118 | struct hlist_head udp_hash[UDP_HTABLE_SIZE]; |
116 | DEFINE_RWLOCK(udp_hash_lock); | 119 | DEFINE_RWLOCK(udp_hash_lock); |
117 | 120 | ||
diff --git a/net/ipv6/udp.c b/net/ipv6/udp.c index 8b3e6d61bf55..c9a97b405511 100644 --- a/net/ipv6/udp.c +++ b/net/ipv6/udp.c | |||
@@ -51,9 +51,6 @@ | |||
51 | #include <linux/seq_file.h> | 51 | #include <linux/seq_file.h> |
52 | #include "udp_impl.h" | 52 | #include "udp_impl.h" |
53 | 53 | ||
54 | DEFINE_SNMP_STAT(struct udp_mib, udp_stats_in6) __read_mostly; | ||
55 | EXPORT_SYMBOL(udp_stats_in6); | ||
56 | |||
57 | static inline int udp_v6_get_port(struct sock *sk, unsigned short snum) | 54 | static inline int udp_v6_get_port(struct sock *sk, unsigned short snum) |
58 | { | 55 | { |
59 | return udp_get_port(sk, snum, ipv6_rcv_saddr_equal); | 56 | return udp_get_port(sk, snum, ipv6_rcv_saddr_equal); |