From: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
Date: Thu, 8 Jan 2009 02:08:28 +0000 (-0800)
Subject: memcg: don't trigger oom at page migration
X-Git-Tag: Ubuntu-5.10.0-12.13~34700
X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=3bb4edf24b26358eccfc69ac8b9a9c36ccc312da;p=mirror_ubuntu-hirsute-kernel.git

memcg: don't trigger oom at page migration

I think triggering OOM at mem_cgroup_prepare_migration would be just a bit
overkill.  Returning -ENOMEM would be enough for
mem_cgroup_prepare_migration.  The caller would handle the case anyway.

Signed-off-by: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---

diff --git a/mm/memcontrol.c b/mm/memcontrol.c
index 8d2e5c8a25b1..3ba72e6556cc 100644
--- a/mm/memcontrol.c
+++ b/mm/memcontrol.c
@@ -1361,7 +1361,7 @@ int mem_cgroup_prepare_migration(struct page *page, struct mem_cgroup **ptr)
 	unlock_page_cgroup(pc);
 
 	if (mem) {
-		ret = mem_cgroup_try_charge(NULL, GFP_KERNEL, &mem);
+		ret = __mem_cgroup_try_charge(NULL, GFP_KERNEL, &mem, false);
 		css_put(&mem->css);
 	}
 	*ptr = mem;