From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1107AC433F5 for ; Mon, 3 Sep 2018 20:45:12 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C15D220867 for ; Mon, 3 Sep 2018 20:45:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C15D220867 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=xmission.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728899AbeIDBHD (ORCPT ); Mon, 3 Sep 2018 21:07:03 -0400 Received: from out01.mta.xmission.com ([166.70.13.231]:60148 "EHLO out01.mta.xmission.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728386AbeIDBHD (ORCPT ); Mon, 3 Sep 2018 21:07:03 -0400 Received: from in02.mta.xmission.com ([166.70.13.52]) by out01.mta.xmission.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.87) (envelope-from ) id 1fwvif-0008Hd-Ed; Mon, 03 Sep 2018 14:45:09 -0600 Received: from [105.225.206.69] (helo=x220.Home) by in02.mta.xmission.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_CBC_SHA256:128) (Exim 4.87) (envelope-from ) id 1fwvie-0008G7-Dz; Mon, 03 Sep 2018 14:45:09 -0600 From: "Eric W. Biederman" To: linux-kernel@vger.kernel.org Cc: Oleg Nesterov , Linus Torvalds , linux-api@vger.kernel.org, "Eric W. Biederman" Date: Mon, 3 Sep 2018 22:44:21 +0200 Message-Id: <20180903204430.25473-1-ebiederm@xmission.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <87musyl3fa.fsf@xmission.com> References: <87musyl3fa.fsf@xmission.com> X-XM-SPF: eid=1fwvie-0008G7-Dz;;;mid=<20180903204430.25473-1-ebiederm@xmission.com>;;;hst=in02.mta.xmission.com;;;ip=105.225.206.69;;;frm=ebiederm@xmission.com;;;spf=neutral X-XM-AID: U2FsdGVkX192aeix0IP5/UiOUvf6g+Uopl/gMC2hQvI= X-SA-Exim-Connect-IP: 105.225.206.69 X-SA-Exim-Mail-From: ebiederm@xmission.com Subject: [PATCH 01/10] signal: Always ignore SIGKILL and SIGSTOP sent to the global init X-SA-Exim-Version: 4.2.1 (built Thu, 05 May 2016 13:38:54 -0600) X-SA-Exim-Scanned: Yes (on in02.mta.xmission.com) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org If the first process started (aka /sbin/init) receives a SIGKILL it will panic the system if it is delivered. Making the system unusable and undebugable. It isn't much better if the first process started receives SIGSTOP. So always ignore SIGSTOP and SIGKILL sent to init. This is done in a separate clause in sig_task_ignored as force_sig_info can clear SIG_UNKILLABLE and this protection should work even then. Signed-off-by: "Eric W. Biederman" --- kernel/signal.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kernel/signal.c b/kernel/signal.c index 5843c541fda9..b33264bb2064 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -78,6 +78,10 @@ static bool sig_task_ignored(struct task_struct *t, int sig, bool force) handler = sig_handler(t, sig); + /* SIGKILL and SIGSTOP may not be sent to the global init */ + if (unlikely(is_global_init(t) && sig_kernel_only(sig))) + return true; + if (unlikely(t->signal->flags & SIGNAL_UNKILLABLE) && handler == SIG_DFL && !(force && sig_kernel_only(sig))) return true; -- 2.17.1