Linux Container Development
 help / color / mirror / Atom feed
From: Oleg Nesterov <oleg-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
To: Sukadev Bhattiprolu
	<sukadev-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org>
Cc: linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	bastian-yyjItF7Rl6lg9hUCZPvPmw@public.gmane.org,
	ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org,
	containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org,
	roland-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	xemul-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org
Subject: Re: [PATCH 6/7][v6] Protect cinit from blocked fatal signals
Date: Sun, 11 Jan 2009 07:15:05 +0100	[thread overview]
Message-ID: <20090111061505.GB9014@redhat.com> (raw)
In-Reply-To: <20090107075214.GF27985-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>

On 01/06, Sukadev Bhattiprolu wrote:
>
> --- a/kernel/signal.c
> +++ b/kernel/signal.c
> @@ -1890,9 +1890,16 @@ relock:
>
>  		/*
>  		 * Global init gets no signals it doesn't want.
> +		 * Container-init gets no signals it doesn't want from same
> +		 * container.
> +		 *
> +		 * Note that if global/container-init sees a sig_kernel_only()
> +		 * signal here, the signal must have been generated internally
> +		 * or must have come from an ancestor namespace. In either
> +		 * case, the signal cannot be dropped.
>  		 */
>  		if (unlikely(signal->flags & SIGNAL_UNKILLABLE) &&
> -		    !signal_group_exit(signal))
> +				!sig_kernel_only(signr))

Just for record. We still have small problem with fatal_signal_pending(cinit),
we should add a similar change to complete_signal to ensure that the pending
SIGKILL implies SIGNAL_GROUP_EXIT. But this needs another patch, and this
series is imho fine.

Oleg.

  parent reply	other threads:[~2009-01-11  6:15 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-07  7:45 [PATCH 0/7][v6] Container-init signal semantics Sukadev Bhattiprolu
2009-01-07  7:49 ` Remove 'handler' parameter to tracehook functions Sukadev Bhattiprolu
2009-01-07  7:50 ` [PATCH 2/7][v6] Protect init from unwanted signals more Sukadev Bhattiprolu
2009-01-07  7:51 ` [PATCH 3/7][v6] Add from_ancestor_ns parameter to send_signal() Sukadev Bhattiprolu
2009-01-07  7:51 ` [PATCH 4/7][v6] Define siginfo_from_ancestor_ns() Sukadev Bhattiprolu
2009-01-07  7:51 ` [PATCH 5/7][v6] Protect cinit from unblocked SIG_DFL signals Sukadev Bhattiprolu
2009-01-07  7:52 ` [PATCH 6/7][v6] Protect cinit from blocked fatal signals Sukadev Bhattiprolu
     [not found]   ` <20090107075214.GF27985-r/Jw6+rmf7HQT0dZR+AlfA@public.gmane.org>
2009-01-11  6:15     ` Oleg Nesterov [this message]
2009-01-07  7:52 ` [PATCH 7/7][v6] SI_USER: Masquerade si_pid when crossing pid ns boundary Sukadev Bhattiprolu
2009-01-11  6:04 ` [PATCH 0/7][v6] Container-init signal semantics Oleg Nesterov
2009-01-17 20:46   ` 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=20090111061505.GB9014@redhat.com \
    --to=oleg-h+wxahxf7alqt0dzr+alfa@public.gmane.org \
    --cc=bastian-yyjItF7Rl6lg9hUCZPvPmw@public.gmane.org \
    --cc=containers-qjLDD68F18O7TbgM5vRIOg@public.gmane.org \
    --cc=ebiederm-aS9lmoZGLiVWk0Htik3J/w@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=roland-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=sukadev-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org \
    --cc=xemul-GEFAQzZX7r8dnm+yROfE0A@public.gmane.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