From patchwork Fri Feb 3 00:27:12 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Eric Biggers X-Patchwork-Id: 52224 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp555710wrn; Thu, 2 Feb 2023 16:29:31 -0800 (PST) X-Google-Smtp-Source: AK7set8fdu8P8Gb29EleuI14YC0Hqf4OqaiZW0i9Us40fGFOMdQMNlqe0OkVFvut+EO2EBKs8xNY X-Received: by 2002:a05:6a20:441a:b0:be:9142:737a with SMTP id ce26-20020a056a20441a00b000be9142737amr9707365pzb.56.1675384171247; Thu, 02 Feb 2023 16:29:31 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1675384171; cv=none; d=google.com; s=arc-20160816; b=Rmu+zqlAuSZTIItPOIzIPx4HBsaKwm2BccAm8r9sRA8taxxj5FIVdmY6yq7IUh9CZq 8CrMdJxZ8mIU0FQLo2ghW9Dk3Edcpsij887YICpCr5pwbcnzYOR5xp1DXz7HmG2ndECC i96SpD+d6r7GQtqzPJ9MDe2djXIf2My5GCVYJd1hv6x6M0kWBmXmwWGxvIbKMNBXg51o Z8nX7uezAmA1NooVAlAryOa0sv1FKbo51kEHmrs6zpvZUwVX8WvcxOGeaqq4kbN9Fu5H NPmbP03/yOJq3m1xQ04+Ov0xE0sdlIvwdr3doCETSwjhe8tREv4Li1VP59bLMuFLiCpZ AbiA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=KMIqUnFpYqAi4nXtm1A6wnfCWHC9OWgQUZeYw0aEKQM=; b=E10kEQQ5vNbaFfhMDZnVLfJDvURj/GkKHna3uzi5Qppda7GKX0Yr3O2TZgagVRf26O dIoc2lEdKrtGcb2o9StMn9U0maeP9BAWswaw+VMkJBW+JKje4Nvz3NhrQQFxAuMdnjqW eV/EHWfDc0u6AvCgc0EJ3iNTYJvvWgTDcYISJkki+3cmAvj1jucje0fcWTBe9kvZO/Ti ND/+f7XpMfoXBMVFNifWt8BtrQj1NVHL778nauK+NeB0ICgYQFB5loHt7YvPKV9a3kY0 5EVBGJnZkYfuKYL5z4qQjxDxXujDWpWtaF0CBbmCHCJbVMyLgyjDNfkUoohPQGPnbqG9 6Zgg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=CK0Y9GFB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w3-20020a63a743000000b004d21beccd98si1228398pgo.29.2023.02.02.16.29.17; Thu, 02 Feb 2023 16:29:31 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=CK0Y9GFB; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233400AbjBCA2e (ORCPT + 99 others); Thu, 2 Feb 2023 19:28:34 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54566 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233048AbjBCA2P (ORCPT ); Thu, 2 Feb 2023 19:28:15 -0500 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EADC52528A; Thu, 2 Feb 2023 16:28:09 -0800 (PST) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 21CA461D46; Fri, 3 Feb 2023 00:28:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 03144C4339B; Fri, 3 Feb 2023 00:28:07 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1675384088; bh=nv2Qqlsj2+1OK7qBLFpDl9kvNBYUdDR2EUyByUiFUks=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=CK0Y9GFBarZo+QE/MpjKoc6nwE1u+TwqkwRsKmMBRQTuHVnfXvoYHF3iWMH4a3dXU dTQGC2Az98UWAZXa0BCXAC90Kz79lz1fFUHN6FfJBOdZV7Lha4sZrl5ohN9tJ7Mtf5 SJO1jfsDrapqEAoNr8lkDuo1CLRcbpWbmVO2cvaXvxeXfESaQFeYcNoIsgq4OSrNce hRWBOrrssSrhCKn42tgGNJaiDb0FOC5Jr1U0roN+1kh5dmxJsZCK7P0TY/Nw0Lg2yl PQxEJVWt88cZMckrCRz2/++gk3YqtNLx0sIc7a+J/C1cRHo4AHONDxlKDS4H/QZm09 V9+vibCzFA+gQ== From: Eric Biggers To: stable@vger.kernel.org Cc: Harshit Mogalapalli , Kees Cook , SeongJae Park , Seth Jenkins , Jann Horn , "Eric W . Biederman" , linux-hardening@vger.kernel.org, linux-kernel@vger.kernel.org, Jonathan Corbet , Andrew Morton , Baolin Wang , "Jason A. Donenfeld" , Eric Biggers , Huang Ying , Arnd Bergmann , linux-doc@vger.kernel.org Subject: [PATCH 4.19 v2 10/15] exit: Allow oops_limit to be disabled Date: Thu, 2 Feb 2023 16:27:12 -0800 Message-Id: <20230203002717.49198-11-ebiggers@kernel.org> X-Mailer: git-send-email 2.39.1 In-Reply-To: <20230203002717.49198-1-ebiggers@kernel.org> References: <20230203002717.49198-1-ebiggers@kernel.org> MIME-Version: 1.0 X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1756767632910036542?= X-GMAIL-MSGID: =?utf-8?q?1756767632910036542?= From: Kees Cook commit de92f65719cd672f4b48397540b9f9eff67eca40 upstream. In preparation for keeping oops_limit logic in sync with warn_limit, have oops_limit == 0 disable checking the Oops counter. Cc: Jann Horn Cc: Jonathan Corbet Cc: Andrew Morton Cc: Baolin Wang Cc: "Jason A. Donenfeld" Cc: Eric Biggers Cc: Huang Ying Cc: "Eric W. Biederman" Cc: Arnd Bergmann Cc: linux-doc@vger.kernel.org Signed-off-by: Kees Cook Signed-off-by: Eric Biggers --- Documentation/sysctl/kernel.txt | 5 +++-- kernel/exit.c | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt index fd65f4e651d55..e1d375df4f286 100644 --- a/Documentation/sysctl/kernel.txt +++ b/Documentation/sysctl/kernel.txt @@ -559,8 +559,9 @@ scanned for a given scan. oops_limit: Number of kernel oopses after which the kernel should panic when -``panic_on_oops`` is not set. Setting this to 0 or 1 has the same effect -as setting ``panic_on_oops=1``. +``panic_on_oops`` is not set. Setting this to 0 disables checking +the count. Setting this to 1 has the same effect as setting +``panic_on_oops=1``. The default value is 10000. ============================================================== diff --git a/kernel/exit.c b/kernel/exit.c index 5cd8a34257650..b2f0aaf6bee78 100644 --- a/kernel/exit.c +++ b/kernel/exit.c @@ -986,7 +986,7 @@ void __noreturn make_task_dead(int signr) * To make sure this can't happen, place an upper bound on how often the * kernel may oops without panic(). */ - if (atomic_inc_return(&oops_count) >= READ_ONCE(oops_limit)) + if (atomic_inc_return(&oops_count) >= READ_ONCE(oops_limit) && oops_limit) panic("Oopsed too often (kernel.oops_limit is %d)", oops_limit); do_exit(signr);