summaryrefslogtreecommitdiffstats
path: root/mm/failslab.c
diff options
context:
space:
mode:
authorKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>2012-03-21 16:34:22 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2012-03-21 17:55:01 -0700
commitb24028572fb69e9dd6de8c359eba2b2c66baa889 (patch)
tree563594eba40e5fd0b61c36c09705f128a8dfbe40 /mm/failslab.c
parentca464d69b19120a826aa2534de2511a6f542edf5 (diff)
downloadop-kernel-dev-b24028572fb69e9dd6de8c359eba2b2c66baa889.zip
op-kernel-dev-b24028572fb69e9dd6de8c359eba2b2c66baa889.tar.gz
memcg: remove PCG_CACHE page_cgroup flag
We record 'the page is cache' with the PCG_CACHE bit in page_cgroup. Here, "CACHE" means anonymous user pages (and SwapCache). This doesn't include shmem. Considering callers, at charge/uncharge, the caller should know what the page is and we don't need to record it by using one bit per page. This patch removes PCG_CACHE bit and make callers of mem_cgroup_charge_statistics() to specify what the page is. About page migration: Mapping of the used page is not touched during migra tion (see page_remove_rmap) so we can rely on it and push the correct charge type down to __mem_cgroup_uncharge_common from end_migration for unused page. The force flag was misleading was abused for skipping the needless page_mapped() / PageCgroupMigration() check, as we know the unused page is no longer mapped and cleared the migration flag just a few lines up. But doing the checks is no biggie and it's not worth adding another flag just to skip them. [akpm@linux-foundation.org: checkpatch fixes] [hughd@google.com: fix PageAnon uncharging] Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com> Acked-by: Michal Hocko <mhocko@suse.cz> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Cc: Hugh Dickins <hughd@google.com> Cc: Ying Han <yinghan@google.com> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/failslab.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud