On Wed, Jun 16, 2010 at 5:33 AM, KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote: > On Tue, 15 Jun 2010 18:59:25 +0900 > Minchan Kim <minchan.kim@xxxxxxxxx> wrote: > >> > -/* >> > +/** >> > + * find_lock_task_mm - Checking a process which a task belongs to has valid mm >> > + * and return a locked task which has a valid pointer to mm. >> > + * >> >> This comment should have been another patch. >> BTW, below comment uses "subthread" word. >> Personally it's easy to understand function's goal to me. :) >> >> How about following as? >> Checking a process which has any subthread with vaild mm >> .... >> > Sure. thank you. v2 is here. I removed unnecessary parts. > > == > From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> > > When the OOM killer scans task, it check a task is under memcg or > not when it's called via memcg's context. > > But, as Oleg pointed out, a thread group leader may have NULL ->mm > and task_in_mem_cgroup() may do wrong decision. We have to use > find_lock_task_mm() in memcg as generic OOM-Killer does. > > Changelog: > - removed unnecessary changes in comments. > mm->owner solves the same problem, but unfortunately we have task based selection in OOM killer, so we need this patch. It is quite ironic that we find the mm from the task and then eventually the task back from mm->owner and then the mem cgroup. If we already know the mm from oom_kill.c, I think we can change the function to work off of that. mm->owner->cgroup..no? Balbir -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href