Re: [GIT PULL] Please pull proc and exec work for 5.7-rc1
From: Linus Torvalds
Date: Thu Apr 09 2020 - 12:16:01 EST
On Thu, Apr 9, 2020 at 8:01 AM Eric W. Biederman <ebiederm@xxxxxxxxxxxx> wrote:
>
> When a thread going about it's ordinary business receives the SIGKILL
> from de_thread the thread changes course and finds it's way to do_exit.
> In do_exit the thread calls ptrace_event(PTRACE_EVENT_EXIT, ...) and
> blocks waiting for the tracer to let it continue.
Hah.
That code isn't _supposed_ to block.
may_ptrace_stop() is supposed to stop the blocking exactly so that it
doesn't deadlock.
I wonder why that doesn't work..
[ Goes and look ]
Oh. I see.
That ptrace_may_stop() only ever considered core-dumping, not execve().
But if _that_ is the reason for the deadlock, then it's trivially fixed.
Famous last words..
Linus