this_cpu: Use this_cpu ops for VM statistics
Using per cpu atomics for the vm statistics reduces their overhead. And in the case of x86 we are guaranteed that they will never race even in the lax form used for vm statistics. Acked-by: Tejun Heo <tj@kernel.org> Signed-off-by: Christoph Lameter <cl@linux-foundation.org> Signed-off-by: Tejun Heo <tj@kernel.org>
This commit is contained in:
parent
0b44f4861f
commit
4dac3e9884
1 changed files with 4 additions and 6 deletions
|
@ -76,24 +76,22 @@ DECLARE_PER_CPU(struct vm_event_state, vm_event_states);
|
|||
|
||||
static inline void __count_vm_event(enum vm_event_item item)
|
||||
{
|
||||
__get_cpu_var(vm_event_states).event[item]++;
|
||||
__this_cpu_inc(per_cpu_var(vm_event_states).event[item]);
|
||||
}
|
||||
|
||||
static inline void count_vm_event(enum vm_event_item item)
|
||||
{
|
||||
get_cpu_var(vm_event_states).event[item]++;
|
||||
put_cpu();
|
||||
this_cpu_inc(per_cpu_var(vm_event_states).event[item]);
|
||||
}
|
||||
|
||||
static inline void __count_vm_events(enum vm_event_item item, long delta)
|
||||
{
|
||||
__get_cpu_var(vm_event_states).event[item] += delta;
|
||||
__this_cpu_add(per_cpu_var(vm_event_states).event[item], delta);
|
||||
}
|
||||
|
||||
static inline void count_vm_events(enum vm_event_item item, long delta)
|
||||
{
|
||||
get_cpu_var(vm_event_states).event[item] += delta;
|
||||
put_cpu();
|
||||
this_cpu_add(per_cpu_var(vm_event_states).event[item], delta);
|
||||
}
|
||||
|
||||
extern void all_vm_events(unsigned long *);
|
||||
|
|
Loading…
Add table
Reference in a new issue