[PATCH 0/2] introduce for_each_process_thread_break() and for_each_process_thread_continue()

From: Oleg Nesterov
Date: Wed Sep 12 2018 - 12:43:01 EST


Resend.

IMHO this makes sense anyway, but mostly this is preparation for other changes.
show_state_filter() and other "slow" users of for_each_process() can livelock
and even trigger hard lockups.

Peter, you have already reviewed at least 1/2 (heh, two years ago) and iirc
you were mostly agree but pointed out that for_each_xxx() in _continue() could
be SPEND_TOO_MUCH_TIME themselves. I added a note into the changelog.

Oleg.

include/linux/sched/signal.h | 10 ++++++++++
kernel/exit.c | 42 ++++++++++++++++++++++++++++++++++++++++++
kernel/hung_task.c | 25 +++++++++----------------
3 files changed, 61 insertions(+), 16 deletions(-)