Michal Hocko wrote: > On Thu 18-02-16 13:08:49, Michal Hocko wrote: > > I guess we can safely remove the memcg > > argument from oom_badness and oom_unkillable_task. At least from a quick > > glance... > > No we cannot actually. oom_kill_process could select a child which is in > a different memcg in that case... Then, don't we need to check whether processes sharing victim->mm in other thread groups are in the same memcg when we walk the process list? ---------- diff --git a/mm/oom_kill.c b/mm/oom_kill.c index f426ce8..d05db31 100644 --- a/mm/oom_kill.c +++ b/mm/oom_kill.c @@ -762,8 +762,7 @@ void oom_kill_process(struct oom_control *oc, struct task_struct *p, continue; if (same_thread_group(p, victim)) continue; - if (unlikely(p->flags & PF_KTHREAD) || is_global_init(p) || - p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN) { + if (oom_badness(p, memcg, oc, totalpages, false) == 0) { /* * We cannot use oom_reaper for the mm shared by this * process because it wouldn't get killed and so the ---------- -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>