From mboxrd@z Thu Jan 1 00:00:00 1970 From: sukadev-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org Subject: [RFC][PATCH] 'kill sig -1' must only apply to callers namespace Date: Tue, 21 Oct 2008 18:41:41 -0700 Message-ID: <20081022014141.GA25355@us.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: containers-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: Oleg Nesterov , daniel-nym3zxDgnZcAvxtiuMwx3w@public.gmane.org, "Eric W. Biederman" , Pavel Emelyanov Cc: Containers , sukadev-23VcF4HTsmIX0ybBhKVfKdBPR1lH4CV8@public.gmane.org List-Id: containers.vger.kernel.org >From d92b4befe07c6a1e852e4462126a5443342448cd Mon Sep 17 00:00:00 2001 From: Sukadev Bhattiprolu Date: Tue, 21 Oct 2008 18:00:01 -0700 Subject: [PATCH] kill sig -1 must only apply to callers namespace Currently "kill -1" kills processes in all namespaces and breaks the isolation of namespaces. Earlier attempt to fix this is discussed at: http://lkml.org/lkml/2008/7/23/148 but nothing seems to have happened since then. This patch uses the simple fix suggested by Oleg Nesterov. Signed-off-by: Sukadev Bhattiprolu --- kernel/signal.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/kernel/signal.c b/kernel/signal.c index 105217d..4530fc6 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -1144,7 +1144,8 @@ static int kill_something_info(int sig, struct siginfo *info, pid_t pid) struct task_struct * p; for_each_process(p) { - if (p->pid > 1 && !same_thread_group(p, current)) { + if (task_pid_vnr(p) > 1 && + !same_thread_group(p, current)) { int err = group_send_sig_info(sig, info, p); ++count; if (err != -EPERM) -- 1.5.2.5