diff options
author | Christoph Lameter <cl@linux-foundation.org> | 2009-10-03 06:48:22 -0400 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2009-10-03 06:48:22 -0400 |
commit | 4ea7334b6de818b0123fa4be32af4cb8ac65174c (patch) | |
tree | bd9d2671945cdda7629b315d9ecb19b86781e839 /include/net | |
parent | fce22848a1e9887d92c2a975494b69149808750e (diff) |
this_cpu: Use this_cpu ops for network statistics
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: David Miller <davem@davemloft.net>
Signed-off-by: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'include/net')
-rw-r--r-- | include/net/neighbour.h | 7 | ||||
-rw-r--r-- | include/net/netfilter/nf_conntrack.h | 4 |
2 files changed, 3 insertions, 8 deletions
diff --git a/include/net/neighbour.h b/include/net/neighbour.h index 3817fda82a80..f28403ff7648 100644 --- a/include/net/neighbour.h +++ b/include/net/neighbour.h | |||
@@ -90,12 +90,7 @@ struct neigh_statistics | |||
90 | unsigned long unres_discards; /* number of unresolved drops */ | 90 | unsigned long unres_discards; /* number of unresolved drops */ |
91 | }; | 91 | }; |
92 | 92 | ||
93 | #define NEIGH_CACHE_STAT_INC(tbl, field) \ | 93 | #define NEIGH_CACHE_STAT_INC(tbl, field) this_cpu_inc((tbl)->stats->field) |
94 | do { \ | ||
95 | preempt_disable(); \ | ||
96 | (per_cpu_ptr((tbl)->stats, smp_processor_id())->field)++; \ | ||
97 | preempt_enable(); \ | ||
98 | } while (0) | ||
99 | 94 | ||
100 | struct neighbour | 95 | struct neighbour |
101 | { | 96 | { |
diff --git a/include/net/netfilter/nf_conntrack.h b/include/net/netfilter/nf_conntrack.h index cbdd6284996d..dde549779e42 100644 --- a/include/net/netfilter/nf_conntrack.h +++ b/include/net/netfilter/nf_conntrack.h | |||
@@ -295,11 +295,11 @@ extern unsigned int nf_conntrack_htable_size; | |||
295 | extern unsigned int nf_conntrack_max; | 295 | extern unsigned int nf_conntrack_max; |
296 | 296 | ||
297 | #define NF_CT_STAT_INC(net, count) \ | 297 | #define NF_CT_STAT_INC(net, count) \ |
298 | (per_cpu_ptr((net)->ct.stat, raw_smp_processor_id())->count++) | 298 | __this_cpu_inc((net)->ct.stat->count) |
299 | #define NF_CT_STAT_INC_ATOMIC(net, count) \ | 299 | #define NF_CT_STAT_INC_ATOMIC(net, count) \ |
300 | do { \ | 300 | do { \ |
301 | local_bh_disable(); \ | 301 | local_bh_disable(); \ |
302 | per_cpu_ptr((net)->ct.stat, raw_smp_processor_id())->count++; \ | 302 | __this_cpu_inc((net)->ct.stat->count); \ |
303 | local_bh_enable(); \ | 303 | local_bh_enable(); \ |
304 | } while (0) | 304 | } while (0) |
305 | 305 | ||