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>
This commit is contained in:
Christoph Lameter
2009-10-03 19:48:22 +09:00
committed by Tejun Heo
parent fce22848a1
commit 4ea7334b6d
2 changed files with 3 additions and 8 deletions

View File

@@ -90,12 +90,7 @@ struct neigh_statistics
unsigned long unres_discards; /* number of unresolved drops */ unsigned long unres_discards; /* number of unresolved drops */
}; };
#define NEIGH_CACHE_STAT_INC(tbl, field) \ #define NEIGH_CACHE_STAT_INC(tbl, field) this_cpu_inc((tbl)->stats->field)
do { \
preempt_disable(); \
(per_cpu_ptr((tbl)->stats, smp_processor_id())->field)++; \
preempt_enable(); \
} while (0)
struct neighbour struct neighbour
{ {

View File

@@ -295,11 +295,11 @@ extern unsigned int nf_conntrack_htable_size;
extern unsigned int nf_conntrack_max; extern unsigned int nf_conntrack_max;
#define NF_CT_STAT_INC(net, count) \ #define NF_CT_STAT_INC(net, count) \
(per_cpu_ptr((net)->ct.stat, raw_smp_processor_id())->count++) __this_cpu_inc((net)->ct.stat->count)
#define NF_CT_STAT_INC_ATOMIC(net, count) \ #define NF_CT_STAT_INC_ATOMIC(net, count) \
do { \ do { \
local_bh_disable(); \ local_bh_disable(); \
per_cpu_ptr((net)->ct.stat, raw_smp_processor_id())->count++; \ __this_cpu_inc((net)->ct.stat->count); \
local_bh_enable(); \ local_bh_enable(); \
} while (0) } while (0)