diff options
author | Johannes Weiner <jweiner@redhat.com> | 2012-01-12 20:18:35 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-01-12 23:13:06 -0500 |
commit | 0e574a932d2cab8eb3b02d21feb59f2c09154738 (patch) | |
tree | 5bfae84ec49d6e92efcf6ba1cb92235f546c8e38 /mm | |
parent | 72835c86ca15d0126354b73d5f29ce9194931c9b (diff) |
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>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/memcontrol.c | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/mm/memcontrol.c b/mm/memcontrol.c index aeb23933a052..93cb16d2b96a 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c | |||
@@ -655,16 +655,6 @@ static void mem_cgroup_swap_statistics(struct mem_cgroup *memcg, | |||
655 | this_cpu_add(memcg->stat->count[MEM_CGROUP_STAT_SWAPOUT], val); | 655 | this_cpu_add(memcg->stat->count[MEM_CGROUP_STAT_SWAPOUT], val); |
656 | } | 656 | } |
657 | 657 | ||
658 | void mem_cgroup_pgfault(struct mem_cgroup *memcg, int val) | ||
659 | { | ||
660 | this_cpu_add(memcg->stat->events[MEM_CGROUP_EVENTS_PGFAULT], val); | ||
661 | } | ||
662 | |||
663 | void mem_cgroup_pgmajfault(struct mem_cgroup *memcg, int val) | ||
664 | { | ||
665 | this_cpu_add(memcg->stat->events[MEM_CGROUP_EVENTS_PGMAJFAULT], val); | ||
666 | } | ||
667 | |||
668 | static unsigned long mem_cgroup_read_events(struct mem_cgroup *memcg, | 658 | static unsigned long mem_cgroup_read_events(struct mem_cgroup *memcg, |
669 | enum mem_cgroup_events_index idx) | 659 | enum mem_cgroup_events_index idx) |
670 | { | 660 | { |
@@ -978,11 +968,11 @@ void mem_cgroup_count_vm_event(struct mm_struct *mm, enum vm_event_item idx) | |||
978 | goto out; | 968 | goto out; |
979 | 969 | ||
980 | switch (idx) { | 970 | switch (idx) { |
981 | case PGMAJFAULT: | ||
982 | mem_cgroup_pgmajfault(memcg, 1); | ||
983 | break; | ||
984 | case PGFAULT: | 971 | case PGFAULT: |
985 | mem_cgroup_pgfault(memcg, 1); | 972 | this_cpu_inc(memcg->stat->events[MEM_CGROUP_EVENTS_PGFAULT]); |
973 | break; | ||
974 | case PGMAJFAULT: | ||
975 | this_cpu_inc(memcg->stat->events[MEM_CGROUP_EVENTS_PGMAJFAULT]); | ||
986 | break; | 976 | break; |
987 | default: | 977 | default: |
988 | BUG(); | 978 | BUG(); |