- It is not possible to have task->mm == &init_mm. - task_lock() buys nothing for 'if (!p->mm)' check. Signed-off-by: Oleg Nesterov <[email protected]> --- 2.6.18-rc4/mm/oom_kill.c~ 2006-08-27 22:28:42.000000000 +0400 +++ 2.6.18-rc4/mm/oom_kill.c 2006-08-27 23:09:09.000000000 +0400 @@ -262,14 +262,11 @@ static void __oom_kill_task(struct task_ return; } - task_lock(p); - if (!p->mm || p->mm == &init_mm) { + if (!p->mm) { WARN_ON(1); printk(KERN_WARNING "tried to kill an mm-less task!\n"); - task_unlock(p); return; } - task_unlock(p); if (message) { printk(KERN_ERR "%s: Killed process %d (%s).\n", @@ -303,7 +300,7 @@ static int oom_kill_task(struct task_str * However, this is of no concern to us. */ - if (mm == NULL || mm == &init_mm) + if (mm == NULL) return 1; __oom_kill_task(p, message); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
- Prev by Date: Re: Linux 2.4.33.2
- Next by Date: Re: HPA Resume patch
- Previous by thread: [PATCH -mm] select_bad_process: cleanup 'releasing' check
- Next by thread: [RFT] sched.h removal from module.h
- Index(es):