Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755518AbYHBNAh (ORCPT ); Sat, 2 Aug 2008 09:00:37 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1753032AbYHBNA3 (ORCPT ); Sat, 2 Aug 2008 09:00:29 -0400 Received: from gustav.zipernowsky.hu ([193.225.20.248]:45974 "EHLO gustav.zipernowsky.hu" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752806AbYHBNA2 (ORCPT ); Sat, 2 Aug 2008 09:00:28 -0400 MIME-Version: 1.0 Date: Sat, 02 Aug 2008 15:00:22 +0200 From: Oliver Pinter To: Oleg Nesterov , stable@kernel.org Cc: Roland McGrath , Andrew Morton , Linus Torvalds , Oliver Pinter , linux-kernel@vger.kernel.org Subject: [RFC, 2.6.26.2-rc1] signals: do_signal_stop: kill the SIGNAL_UNKILLABLE check Reply-To: oliver.pntr@gmail.com Message-ID: User-Agent: RoundCube Webmail/0.1 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1544 Lines: 40 >From 2b201a9eddf509e8e935b45e573648e36f4b623f Mon Sep 17 00:00:00 2001 From: Oleg Nesterov Date: Fri, 25 Jul 2008 01:47:31 -0700 Subject: [PATCH] signals: do_signal_stop: kill the SIGNAL_UNKILLABLE check [ Upstream commit 2b201a9eddf509e8e935b45e573648e36f4b623f ] fae5fa44f1fd079ffbed8e0add929dd7bbd1347f changed do_signal_stop() to check SIGNAL_UNKILLABLE, this wasn't needed. If signal_group_exit() == F, the signal sent to SIGNAL_UNKILLABLE task must be already filtered out by the caller, get_signal_to_deliver(). And if signal_group_exit() == T we are not going to stop. Signed-off-by: Oleg Nesterov Acked-by: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds CC: Oliver Pinter diff --git a/kernel/signal.c b/kernel/signal.c index 15f901a..0514da5 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -1649,8 +1649,7 @@ static int do_signal_stop(int signr) } else { struct task_struct *t; - if (unlikely((sig->flags & (SIGNAL_STOP_DEQUEUED | SIGNAL_UNKILLABLE)) - != SIGNAL_STOP_DEQUEUED) || + if (!likely(sig->flags & SIGNAL_STOP_DEQUEUED) || unlikely(signal_group_exit(sig))) return 0; /* -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/