From: KAMEZAWA Hiroyuki This rollback should be done at failure. Signed-off-by: KAMEZAWA Hiroyuki Cc: Balbir Singh Cc: "Eric W. Biederman" Cc: Pavel Emelyanov Cc: Li Zefan Cc: Hugh Dickins Cc: YAMAMOTO Takashi Cc: Paul Menage Cc: David Rientjes Signed-off-by: Andrew Morton --- mm/memcontrol.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff -puN mm/memcontrol.c~memcg-remove-refcnt-from-page_cgroup-fix mm/memcontrol.c --- a/mm/memcontrol.c~memcg-remove-refcnt-from-page_cgroup-fix +++ a/mm/memcontrol.c @@ -762,8 +762,8 @@ int mem_cgroup_prepare_migration(struct /* remove redundant charge if migration failed*/ void mem_cgroup_end_migration(struct page *newpage) { - /* At success, page->mapping is not NULL */ - if (newpage->mapping) + /* At success, page->mapping is not NULL and nothing to do. */ + if (!newpage->mapping) __mem_cgroup_uncharge_common(newpage, MEM_CGROUP_CHARGE_TYPE_FORCE); } _