mm: memcg: clean up fault accounting
The fault accounting functions have a single, memcg-internal user, so they don't need to be global. In fact, their one-line bodies can be directly folded into the caller. And since faults happen one at a time, use this_cpu_inc() directly instead of this_cpu_add(foo, 1). Signed-off-by: Johannes Weiner <jweiner@redhat.com> Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Acked-by: Michal Hocko <mhocko@suse.cz> Acked-by: Balbir Singh <bsingharora@gmail.com> Cc: David Rientjes <rientjes@google.com> Cc: Hugh Dickins <hughd@google.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
72835c86ca
commit
0e574a932d
|
@ -655,16 +655,6 @@ static void mem_cgroup_swap_statistics(struct mem_cgroup *memcg,
|
||||||
this_cpu_add(memcg->stat->count[MEM_CGROUP_STAT_SWAPOUT], val);
|
this_cpu_add(memcg->stat->count[MEM_CGROUP_STAT_SWAPOUT], val);
|
||||||
}
|
}
|
||||||
|
|
||||||
void mem_cgroup_pgfault(struct mem_cgroup *memcg, int val)
|
|
||||||
{
|
|
||||||
this_cpu_add(memcg->stat->events[MEM_CGROUP_EVENTS_PGFAULT], val);
|
|
||||||
}
|
|
||||||
|
|
||||||
void mem_cgroup_pgmajfault(struct mem_cgroup *memcg, int val)
|
|
||||||
{
|
|
||||||
this_cpu_add(memcg->stat->events[MEM_CGROUP_EVENTS_PGMAJFAULT], val);
|
|
||||||
}
|
|
||||||
|
|
||||||
static unsigned long mem_cgroup_read_events(struct mem_cgroup *memcg,
|
static unsigned long mem_cgroup_read_events(struct mem_cgroup *memcg,
|
||||||
enum mem_cgroup_events_index idx)
|
enum mem_cgroup_events_index idx)
|
||||||
{
|
{
|
||||||
|
@ -978,11 +968,11 @@ void mem_cgroup_count_vm_event(struct mm_struct *mm, enum vm_event_item idx)
|
||||||
goto out;
|
goto out;
|
||||||
|
|
||||||
switch (idx) {
|
switch (idx) {
|
||||||
case PGMAJFAULT:
|
|
||||||
mem_cgroup_pgmajfault(memcg, 1);
|
|
||||||
break;
|
|
||||||
case PGFAULT:
|
case PGFAULT:
|
||||||
mem_cgroup_pgfault(memcg, 1);
|
this_cpu_inc(memcg->stat->events[MEM_CGROUP_EVENTS_PGFAULT]);
|
||||||
|
break;
|
||||||
|
case PGMAJFAULT:
|
||||||
|
this_cpu_inc(memcg->stat->events[MEM_CGROUP_EVENTS_PGMAJFAULT]);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
BUG();
|
BUG();
|
||||||
|
|
Loading…
Reference in New Issue