aboutsummaryrefslogtreecommitdiffstats
path: root/net/dccp
diff options
context:
space:
mode:
authorWANG Cong <xiyou.wangcong@gmail.com>2014-05-05 18:55:55 -0400
committerDavid S. Miller <davem@davemloft.net>2014-05-07 16:06:05 -0400
commit698365fa1874aa7635d51667a34a2842228e9837 (patch)
tree13230edeac756a36260bb2aef5d1b1da0cada7f9 /net/dccp
parentd1f88a667c16e38d5a796b5fcdfd4ddbac1f638f (diff)
net: clean up snmp stats code
commit 8f0ea0fe3a036a47767f9c80e (snmp: reduce percpu needs by 50%) reduced snmp array size to 1, so technically it doesn't have to be an array any more. What's more, after the following commit: commit 933393f58fef9963eac61db8093689544e29a600 Date: Thu Dec 22 11:58:51 2011 -0600 percpu: Remove irqsafe_cpu_xxx variants We simply say that regular this_cpu use must be safe regardless of preemption and interrupt state. That has no material change for x86 and s390 implementations of this_cpu operations. However, arches that do not provide their own implementation for this_cpu operations will now get code generated that disables interrupts instead of preemption. probably no arch wants to have SNMP_ARRAY_SZ == 2. At least after almost 3 years, no one complains. So, just convert the array to a single pointer and remove snmp_mib_init() and snmp_mib_free() as well. Cc: Christoph Lameter <cl@linux.com> Cc: Eric Dumazet <eric.dumazet@gmail.com> Cc: David S. Miller <davem@davemloft.net> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp')
-rw-r--r--net/dccp/proto.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/net/dccp/proto.c b/net/dccp/proto.c
index eb892b4f4814..de2c1e719305 100644
--- a/net/dccp/proto.c
+++ b/net/dccp/proto.c
@@ -1084,14 +1084,15 @@ EXPORT_SYMBOL_GPL(dccp_shutdown);
1084 1084
1085static inline int dccp_mib_init(void) 1085static inline int dccp_mib_init(void)
1086{ 1086{
1087 return snmp_mib_init((void __percpu **)dccp_statistics, 1087 dccp_statistics = alloc_percpu(struct dccp_mib);
1088 sizeof(struct dccp_mib), 1088 if (!dccp_statistics)
1089 __alignof__(struct dccp_mib)); 1089 return -ENOMEM;
1090 return 0;
1090} 1091}
1091 1092
1092static inline void dccp_mib_exit(void) 1093static inline void dccp_mib_exit(void)
1093{ 1094{
1094 snmp_mib_free((void __percpu **)dccp_statistics); 1095 free_percpu(dccp_statistics);
1095} 1096}
1096 1097
1097static int thash_entries; 1098static int thash_entries;