Kees Cook [off-list ref] writes:
On Sun, Mar 08, 2020 at 04:38:00PM -0500, Eric W. Biederman wrote:
quoted
Futher this consolidates all of the possible indefinite waits for
userspace together at the top of flush_old_exec. The possible wait
for a ptracer on PTRACE_EVENT_EXIT, the possible wait for a page fault
to be resolved in clear_child_tid, and the possible wait for a page
fault in exit_robust_list.
I forgot to mention, just as a point of clarity, there are lots of
other page faults possible, but they're _before_ flush_old_exec()
(i.e. all the copy_strings() calls). Is it worth clarifying this to
"before or at the top of flush_old_exec()" or do you mean something
else? (And as always: perhaps expand flush_old_exec()'s comment to
describe the newly intended state.)
Yes. Before or at the start of flush_old_exec where the mutex
is taken. That is the point. I will see if I can come up with
and appropriate comment.
Eric