The patch titled Subject: mm/oom_kill: cleanup the "kill sharing same memory" loop has been added to the -mm tree. Its filename is mm-oom_kill-cleanup-the-kill-sharing-same-memory-loop.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/mm-oom_kill-cleanup-the-kill-sharing-same-memory-loop.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/mm-oom_kill-cleanup-the-kill-sharing-same-memory-loop.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 *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Oleg Nesterov <oleg@xxxxxxxxxx> Subject: mm/oom_kill: cleanup the "kill sharing same memory" loop Purely cosmetic, but the complex "if" condition looks annoying to me. Especially because it is not consistent with OOM_SCORE_ADJ_MIN check which adds another if/continue. Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx> Acked-by: David Rientjes <rientjes@xxxxxxxxxx> Acked-by: Michal Hocko <mhocko@xxxxxxxx> Cc: Tetsuo Handa <penguin-kernel@xxxxxxxxxxxxxxxxxxx> Cc: Kyle Walker <kwalker@xxxxxxxxxx> Cc: Stanislav Kozina <skozina@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/oom_kill.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff -puN mm/oom_kill.c~mm-oom_kill-cleanup-the-kill-sharing-same-memory-loop mm/oom_kill.c --- a/mm/oom_kill.c~mm-oom_kill-cleanup-the-kill-sharing-same-memory-loop +++ a/mm/oom_kill.c @@ -583,14 +583,18 @@ void oom_kill_process(struct oom_control * pending fatal signal. */ rcu_read_lock(); - for_each_process(p) - if (p->mm == mm && !same_thread_group(p, victim) && - !(p->flags & PF_KTHREAD)) { - if (p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN) - continue; + for_each_process(p) { + if (p->mm != mm) + continue; + if (same_thread_group(p, victim)) + continue; + if (unlikely(p->flags & PF_KTHREAD)) + continue; + if (p->signal->oom_score_adj == OOM_SCORE_ADJ_MIN) + continue; - do_send_sig_info(SIGKILL, SEND_SIG_FORCED, p, true); - } + do_send_sig_info(SIGKILL, SEND_SIG_FORCED, p, true); + } rcu_read_unlock(); mmput(mm); _ Patches currently in -mm which might be from oleg@xxxxxxxxxx are mm-fix-the-racy-mm-locked_vm-change-in.patch mm-add-the-struct-mm_struct-mm-local-into.patch mm-oom_kill-remove-the-wrong-fatal_signal_pending-check-in-oom_kill_process.patch mm-oom_kill-cleanup-the-kill-sharing-same-memory-loop.patch mm-oom_kill-fix-the-wrong-task-mm-==-mm-checks-in-oom_kill_process.patch signals-kill-block_all_signals-and-unblock_all_signals.patch coredump-ensure-all-coredumping-tasks-have-signal_group_coredump.patch coredump-change-zap_threads-and-zap_process-to-use-for_each_thread.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html