Prev: [PATCH 5/9] oom: cleanup has_intersects_mems_allowed()
Next: [PATCH 3/9] oom: make oom_unkillable_task() helper function
From: KOSAKI Motohiro on 16 Jun 2010 22:00 > > The patch titled > oom: PF_EXITING check should take mm into account > has been added to the -mm tree. Its filename is > oom-pf_exiting-check-should-take-mm-into-account.patch > > Before you just go and hit "reply", please: > a) Consider who else should be cc'ed > b) Prefer to cc a suitable mailing list as well > c) Ideally: find the original patch on the mailing list and do a > reply-to-all to that, adding suitable additional cc's > > *** Remember to use Documentation/SubmitChecklist when testing your code *** > > See http://userweb.kernel.org/~akpm/stuff/added-to-mm.txt to find > out what to do about this > > The current -mm tree may be found at http://userweb.kernel.org/~akpm/mmotm/ > > ------------------------------------------------------ > Subject: oom: PF_EXITING check should take mm into account > From: Oleg Nesterov <oleg(a)redhat.com> > > select_bad_process() checks PF_EXITING to detect the task which is going > to release its memory, but the logic is very wrong. > > - a single process P with the dead group leader disables > select_bad_process() completely, it will always return > ERR_PTR() while P can live forever > > - if the PF_EXITING task has already released its ->mm > it doesn't make sense to expect it is goiing to free > more memory (except task_struct/etc) > > Change the code to ignore the PF_EXITING tasks without ->mm. > > Signed-off-by: Oleg Nesterov <oleg(a)redhat.com> > Signed-off-by: David Rientjes <rientjes(a)google.com> > Cc: Balbir Singh <balbir(a)in.ibm.com> > Cc: KOSAKI Motohiro <kosaki.motohiro(a)jp.fujitsu.com> > Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org> Acked-by: KOSAKI Motohiro <kosaki.motohiro(a)jp.fujitsu.com> -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |