diff --git a/mm/oom_kill.c b/mm/oom_kill.c index 6e9f16a910e06741e6fdb8da92a4bfa0b1149f65..b9816ea2eb8f7dbd3d89cd0b435f81ee9efc7480 100644 --- a/mm/oom_kill.c +++ b/mm/oom_kill.c @@ -467,6 +467,8 @@ static int oom_kill_process(struct task_struct *p, gfp_t gfp_mask, int order, if (child->mm == p->mm) continue; + if (child->flags & PF_KTHREAD) + continue; if (mem && !task_in_mem_cgroup(child, mem)) continue; if (!has_intersects_mems_allowed(child, nodemask))