[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHk-=whJttTNFQn1fMYp91LZ90iHE7B2THZ8NjQ7fBwmWX9k6w@mail.gmail.com>
Date: Thu, 9 Apr 2020 13:04:34 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: Bernd Edlinger <bernd.edlinger@...mail.de>
Cc: "Eric W. Biederman" <ebiederm@...ssion.com>,
Waiman Long <longman@...hat.com>,
Ingo Molnar <mingo@...nel.org>, Will Deacon <will@...nel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Alexey Gladkov <gladkov.alexey@...il.com>,
Oleg Nesterov <oleg@...hat.com>
Subject: Re: [GIT PULL] Please pull proc and exec work for 5.7-rc1
On Thu, Apr 9, 2020 at 12:57 PM Bernd Edlinger
<bernd.edlinger@...mail.de> wrote:
>
> The use case where this may happen with strace
> when you call strace with lots of -p <pid> arguments,
> and one of them is a bomb. strace stuck.
Yeah, so from a convenience angle I do agree that it would be nicer to
just not count dead threads.
You can test that by just moving the
/* Don't bother with already dead threads */
if (t->exit_state)
continue;
test in zap_other_threads() to above the
count++;
line instead.
NOTE! That is *NOT* the correct true fix. I'm just suggesting that you
try if it fixes that particular test-case (I did not try it myself -
because .. lazy)
If Oleg agrees that we could take the approach that we can share a
signal struct with dead threads, we'd also need to change the
accounting to do that notify_count not when the signal struct is
unlinked, but when exit_state is first set.
I'm not convinced that's the right solution, but I do agree that it's
annoying how easily strace can get stuck, since one of the main uses
for strace is for debugging nasty situations.
Linus
Powered by blists - more mailing lists