From: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
To: Oleg Nesterov <oleg@redhat.com>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>,
Pavel Emelyanov <xemul@openvz.org>,
daniel@hozac.com, Nadia Derbey <Nadia.Derbey@bull.net>,
serue@us.ibm.com, clg@fr.ibm.com,
Containers <containers@lists.osdl.org>,
sukadev@us.ibm.com, linux-kernel@vger.kernel.org
Subject: Re: Signals to cinit
Date: Wed, 12 Nov 2008 11:04:21 -0800 [thread overview]
Message-ID: <20081112190421.GE3230@us.ibm.com> (raw)
In-Reply-To: <20081112150555.GB13269@redhat.com>
Oleg Nesterov [oleg@redhat.com] wrote:
| On 11/10, sukadev@linux.vnet.ibm.com wrote:
| >
| > Also, what happens if a fatal signal is first received from a descendant
| > and while that is still pending, the same signal is received from ancestor
| > ns ? Won't the second one be ignored by legacy_queue() for the non-rt case ?
On second thoughts, cinit is a normal process in its ancestor ns so it
might very well ignore the second instance of the signal (as long as it
does not ignore SIGKILL/SIGSTOP)
|
| Please see my another email:
|
| We must also change sig_ignored() to drop SIGKILL/SIGSTOP early when
| it comes from the same ns. Otherwise, it can mask the next SIGKILL
| from the parent ns.
Ok.
|
| But this perhaps makes sense anyway, even without containers.
| Currently, when the global init has the pending SIGKILL, we can't
| trust __wait_event_killable/etc, and this is actually wrong.
|
| We can drop other SIG_DFL signals from the same namespace early as well.
I think Eric's patchset did this and iirc, we ran into the problem of
blocked SIG_DFL signals ?
| I seem to already did something like sig_init_ignored(), but I forgot.
Yes, I think we had that in the patchset but that was not merged.
|
| Or, we can just ignore this (imho) minor problem.
I think so too.
| The ancestor ns
| must know it can't reliably kill cinit with (say) SIGTERM. It can
| be ignored, or it can have have a handler, and it can be lost because
| SIGTERM is already pending. Only SIGKILL is special.
|
| Actually. I personally think that if we manage to achieve that
|
| - the sub-namespace can't kill its init
|
| - the ancestor can always kill cinit with SIGKILL
Yep.
|
| then imho we should not worry very much about other issues ;)
|
| Oleg.
next prev parent reply other threads:[~2008-11-12 19:08 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20081101180505.GA24268@us.ibm.com>
[not found] ` <20081110173839.GA11121@redhat.com>
2008-11-10 19:32 ` Signals to cinit Oleg Nesterov
2008-11-10 23:27 ` sukadev
2008-11-12 14:52 ` Oleg Nesterov
2008-11-12 16:12 ` Oleg Nesterov
2008-11-12 16:49 ` Serge E. Hallyn
2008-11-12 18:12 ` Sukadev Bhattiprolu
2008-11-12 19:06 ` Serge E. Hallyn
2008-11-11 2:24 ` sukadev
2008-11-12 15:05 ` Oleg Nesterov
2008-11-12 19:04 ` Sukadev Bhattiprolu [this message]
2008-11-14 17:26 ` Oleg Nesterov
2008-11-12 16:53 ` Serge E. Hallyn
2008-11-13 19:10 ` Sukadev Bhattiprolu
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=20081112190421.GE3230@us.ibm.com \
--to=sukadev@linux.vnet.ibm.com \
--cc=Nadia.Derbey@bull.net \
--cc=clg@fr.ibm.com \
--cc=containers@lists.osdl.org \
--cc=daniel@hozac.com \
--cc=ebiederm@xmission.com \
--cc=linux-kernel@vger.kernel.org \
--cc=oleg@redhat.com \
--cc=serue@us.ibm.com \
--cc=sukadev@us.ibm.com \
--cc=xemul@openvz.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox