X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=mm%2Fmemcontrol.c;h=c0500e4d3a2f9d3c5d392888326780379d064a4f;hp=7056c3bdb47821d791ba7bc6a9355018094ef34e;hb=a10cebf56ca7e7c034d1b6646230c6553e478967;hpb=1e24b15b267293567a8d752721c7ae63f281325a diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 7056c3bdb478..c0500e4d3a2f 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -796,6 +796,8 @@ int mem_cgroup_shrink_usage(struct mm_struct *mm, gfp_t gfp_mask) if (mem_cgroup_subsys.disabled) return 0; + if (!mm) + return 0; rcu_read_lock(); mem = mem_cgroup_from_task(rcu_dereference(mm->owner)); @@ -804,6 +806,7 @@ int mem_cgroup_shrink_usage(struct mm_struct *mm, gfp_t gfp_mask) do { progress = try_to_free_mem_cgroup_pages(mem, gfp_mask); + progress += res_counter_check_under_limit(&mem->res); } while (!progress && --retry); css_put(&mem->css);