diff options
author | Hugh Dickins <hugh@veritas.com> | 2008-08-12 15:08:41 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-08-12 16:07:28 -0700 |
commit | 9623e078c1f4692a91531af2f639ec8aff8f0472 (patch) | |
tree | ee2ab90d674accd462600d52b14b386df5d748a1 | |
parent | 3ee1062b4ee82a56294808a065b64f4bc6781a56 (diff) | |
download | op-kernel-dev-9623e078c1f4692a91531af2f639ec8aff8f0472.zip op-kernel-dev-9623e078c1f4692a91531af2f639ec8aff8f0472.tar.gz |
memcg: fix oops in mem_cgroup_shrink_usage
Got an oops in mem_cgroup_shrink_usage() when testing loop over tmpfs:
yes, of course, loop0 has no mm: other entry points check but this didn't.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Cc: 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>
-rw-r--r-- | mm/memcontrol.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 7056c3b..0f1f7a7 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)); |