Re: [PATCH v2 4/5] exec: Move exec_mmap right after de_thread in flush_old_exec

From: Eric W. Biederman
Date: Tue Mar 10 2020 - 17:11:31 EST


Kees Cook <keescook@xxxxxxxxxxxx> writes:

> On Sun, Mar 08, 2020 at 04:38:00PM -0500, Eric W. Biederman wrote:
>> 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