[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHk-=wjhAvv6s_7OVeZJiHaY7bBrHyiPTkSpq-TLr6qxYqxUUw@mail.gmail.com>
Date: Thu, 9 Apr 2020 09:15:37 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: "Eric W. Biederman" <ebiederm@...ssion.com>
Cc: Waiman Long <longman@...hat.com>, Ingo Molnar <mingo@...nel.org>,
Will Deacon <will@...nel.org>,
Bernd Edlinger <bernd.edlinger@...mail.de>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Alexey Gladkov <gladkov.alexey@...il.com>
Subject: Re: [GIT PULL] Please pull proc and exec work for 5.7-rc1
On Thu, Apr 9, 2020 at 8:01 AM Eric W. Biederman <ebiederm@...ssion.com> 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
Powered by blists - more mailing lists