From: Oleg Nesterov <oleg@redhat.com>
To: Igor Zhbanov <i.zhbanov@omprussia.ru>
Cc: linux-trace-devel@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: Mutual debugging of 2 processes can stuck in unkillable stopped state
Date: Mon, 29 Mar 2021 18:49:01 +0200 [thread overview]
Message-ID: <20210329164900.GB24849@redhat.com> (raw)
In-Reply-To: <f2f32ffa-52ad-ff67-19d8-95305a70a6f8@omprussia.ru>
On 03/29, Igor Zhbanov wrote:
>
> Mutual debugging of 2 processes can stuck in unkillable stopped state
can't reproduce and can't understand...
> Hi!
>
> When one process, let's say "A", is tracing the another process "B", and the
> process "B" is trying to attach to the process "A", then both of them are
> getting stuck in the "t+" state. And they are ignoring all of the signals
> including the SIGKILL,
Why do you think so? What is your kernel version?
"t" means TASK_TRACED, SIGKILL should wake it up and terminate.
> so it is not possible to terminate them without
> a reboot.
>
> To reproduce:
> 1) Run two terminals
> 2) Attach with "strace -p ..." from the first terminal to the shell (bash) of
> the second terminal.
> 3) In the second terminal run "exec strace -p ..." to attach to the PID of the
> first strace.
>
> Then you'll see that the second strace is hanging without any output. And the
> first strace will output following and hang too:
> ptrace(PTRACE_SEIZE, 11795, NULL,
> PTRACE_O_TRACESYSGOOD|PTRACE_O_TRACEEXEC|PTRACE_O_TRACEEXIT
>
> (The 11795 is the PID of the first strace itself.)
>
> And in the process list you will see following:
> ps awux | grep strace
> user 11776 0.0 0.0 24752 2248 pts/3 t+ 13:53 0:00 strace -p 11795
> user 11795 0.0 0.0 24752 3888 pts/1 t+ 13:54 0:00 strace -p 11776
OK, may be they sleep in PTRACE_EVENT_EXIT? After you tried to send SIGKILL?
please show us the output from "cat /proc/{11795,11776}/stack". And
"cat /proc/{11795,11776}/status" just in case.
Oleg.
next prev parent reply other threads:[~2021-03-29 16:50 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-29 15:28 Mutual debugging of 2 processes can stuck in unkillable stopped state Igor Zhbanov
2021-03-29 16:49 ` Oleg Nesterov [this message]
2021-03-29 17:01 ` Igor Zhbanov
2021-03-29 17:38 ` Oleg Nesterov
2021-03-29 17:44 ` Igor Zhbanov
2021-04-12 7:25 ` Igor Zhbanov
2021-04-13 17:17 ` Oleg Nesterov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210329164900.GB24849@redhat.com \
--to=oleg@redhat.com \
--cc=i.zhbanov@omprussia.ru \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-devel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.