(off-topic) On 09/19, Oleg Nesterov wrote: > > @@ -570,8 +590,8 @@ void oom_kill_process(struct task_struct *p, gfp_t > gfp_mask, int order, > victim = p; > } > > - /* mm cannot safely be dereferenced after task_unlock(victim) */ > mm = victim->mm; > + atomic_inc(&mm->mm_count);
Btw, I think we need this change anyway. This is pure theoretical, but otherwise this task can exit and free its mm_struct right after task_unlock(), then this mm_struct can be reallocated and used by another task, so we can't trust the "p->mm == mm" check below. Oleg. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/