From: "Jürg Billeter" <j@bitron.ch>
To: Jann Horn <jannh@google.com>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Oleg Nesterov <oleg@redhat.com>,
"Eric W. Biederman" <ebiederm@xmission.com>,
Linux API <linux-api@vger.kernel.org>,
kernel list <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] prctl: add PR_[GS]ET_KILLABLE
Date: Wed, 01 Aug 2018 09:43:57 +0200 [thread overview]
Message-ID: <625ede00c618783eb610b7109c35c514e8faa793.camel@bitron.ch> (raw)
In-Reply-To: <CAG48ez1izZ+W_cPdNp3SOUwb_8YzwAYdSA6d=eqvaF=5+GKemA@mail.gmail.com>
On Tue, 2018-07-31 at 18:26 +0200, Jann Horn wrote:
> On Mon, Jul 30, 2018 at 10:01 AM Jürg Billeter <j@bitron.ch> wrote:
>
> [...]
> > diff --git a/kernel/sys.c b/kernel/sys.c
> > index 38509dc1f77b..264de630d548 100644
> > --- a/kernel/sys.c
> > +++ b/kernel/sys.c
>
> [...]
> > + case PR_SET_KILLABLE:
> > + if (arg2 != 1 || arg3 || arg4 || arg5)
> > + return -EINVAL;
> > + me->signal->flags &= ~SIGNAL_UNKILLABLE;
> > + break;
>
> I don't have an opinion on this patchset otherwise, but should this
> prctl maybe block PR_SET_KILLABLE if you're actually the real init
> process? This seems like it could potentially lead to weird things.
While I don't expect global init to use this, I can't think of a good
reason to disallow it in the kernel. Do you have specific concerns or
is the code in kernel/fork.c the only reason? I prefer avoiding special
cases unless really required.
> This code in kernel/fork.c seems to rely on the fact that global init
> is SIGNAL_UNKILLABLE, and probably also leads to weirdness if
> container init is non-SIGNAL_UNKILLABLE:
Yes, Oleg has mentioned this as well. I have to change copy_process()
to directly check for the PID namespace root process instead of
checking for SIGNAL_UNKILLABLE.
Jürg
next prev parent reply other threads:[~2018-08-01 7:43 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-30 7:52 [PATCH] prctl: add PR_[GS]ET_KILLABLE Jürg Billeter
2018-07-30 10:17 ` Oleg Nesterov
2018-07-30 19:32 ` Jürg Billeter
2018-07-30 19:39 ` Thomas Gleixner
2018-07-31 7:03 ` [PATCH v2] " Jürg Billeter
2018-07-31 14:39 ` Oleg Nesterov
2018-07-31 16:12 ` Jürg Billeter
2018-08-01 14:19 ` Oleg Nesterov
2018-08-03 10:15 ` Jürg Billeter
2018-08-03 12:14 ` Oleg Nesterov
2018-08-03 13:34 ` Eric W. Biederman
2018-08-03 14:39 ` Jürg Billeter
2018-07-31 16:26 ` [PATCH] " Jann Horn
2018-08-01 7:43 ` Jürg Billeter [this message]
2018-08-01 7:56 ` Jann Horn
2018-08-03 14:40 ` [PATCH v3 1/2] fork: do not rely on SIGNAL_UNKILLABLE for init check Jürg Billeter
2018-08-03 14:40 ` [PATCH v3 2/2] prctl: add PR_[GS]ET_KILLABLE Jürg Billeter
2018-09-06 22:42 ` Andrew Morton
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=625ede00c618783eb610b7109c35c514e8faa793.camel@bitron.ch \
--to=j@bitron.ch \
--cc=akpm@linux-foundation.org \
--cc=ebiederm@xmission.com \
--cc=jannh@google.com \
--cc=linux-api@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=oleg@redhat.com \
/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;
as well as URLs for NNTP newsgroup(s).