Received: by 2002:a05:7412:31a9:b0:e2:908c:2ebd with SMTP id et41csp4415758rdb; Fri, 15 Sep 2023 01:07:28 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGPfIYT74WawMiuvbcXhY9m1xoeH54NZy6Cv4BeIWPSheC80lE8V+6MhpeEDneJu8jCPM7Z X-Received: by 2002:a17:90a:fb4a:b0:26d:4312:17e5 with SMTP id iq10-20020a17090afb4a00b0026d431217e5mr729267pjb.6.1694765248306; Fri, 15 Sep 2023 01:07:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694765248; cv=none; d=google.com; s=arc-20160816; b=ISSFUIfF1DXTMI5ugUdZ+WfnXa52tlKo2kV5AktxVFpQBfDPlBCrmALyKYq5Aondo0 Qebc91s/EH/YfbqYFlMXaFZey7sRmNQSy1w0lMsoy35Hgq2aReTRvvLeCYhP3ED+A1yN 6yNgrK31lBnwCb7C+KOPAxsYLczIvNAYLV5k3qJNX6XeLeyQC01zD8uPyIGiwHW+gJnA 6V4lCmAlsmnI+GoGLR1HBYfoDki2Be5VS/aHUg0+ThM4dznQZo1JjMmREdW2f+BXxWmv zA0QkZEhiDj8eVmdaT4bIUDdpse40sTuKXAVnsE9FG5cfx49Z45GALbSSd3lxVkeZsri vzIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:date:from:message-id; bh=43r8TCA2r2DvnU79FysC8gHK7bb7jzkxvEHWC7bKfWo=; fh=me6YpNhP2Ut7onWHBmPfB59KQni8zmhvPvJti8AMa7Q=; b=nXFn/4WRqu+mD0+pH5XbMDyXA9Ez8gZ85KHJzsgq+BjJma12LZCYkVVlIMydkg8lYD NuU2PyT/hSJaVkYIYQeDAyvBxfFkjJLq3xvSeK5+hnsKL6IGckEksJ4E8Tn3Z/IaflW8 mNcyduHmXn6m9SwGY2imfLbniq3uzjR+cRYnnZ7jRrTz2whe6rpH9shVENk3RgpGd20V 8Tb2dhRrvqU2OskX2iivAoNfVu/xMo7GkM0eV/GiR6HcUxoa315rGaF6EAe7hA98D5sf ApsM5Esf+TGLWk5+572RJHC5Wc27GPChsY+SGEyOwxVgm4M3bOvX6uhsFwJJ81ePuIbm TuSg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from pete.vger.email (pete.vger.email. [23.128.96.36]) by mx.google.com with ESMTPS id i23-20020a17090acf9700b0026b502223cbsi3026311pju.10.2023.09.15.01.07.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Sep 2023 01:07:28 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) client-ip=23.128.96.36; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.36 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by pete.vger.email (Postfix) with ESMTP id 17A4183CF492; Fri, 15 Sep 2023 01:05:08 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232438AbjIOIFF (ORCPT + 99 others); Fri, 15 Sep 2023 04:05:05 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33656 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230454AbjIOIFE (ORCPT ); Fri, 15 Sep 2023 04:05:04 -0400 X-Greylist: delayed 553 seconds by postgrey-1.37 at lindbergh.monkeyblade.net; Fri, 15 Sep 2023 01:04:59 PDT Received: from bmailout2.hostsharing.net (bmailout2.hostsharing.net [IPv6:2a01:37:3000::53df:4ef0:0]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 4AD8D1998 for ; Fri, 15 Sep 2023 01:04:59 -0700 (PDT) Received: from h08.hostsharing.net (h08.hostsharing.net [83.223.95.28]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "*.hostsharing.net", Issuer "RapidSSL Global TLS RSA4096 SHA256 2022 CA1" (verified OK)) by bmailout2.hostsharing.net (Postfix) with ESMTPS id 90A232800BC39; Fri, 15 Sep 2023 09:55:44 +0200 (CEST) Received: by h08.hostsharing.net (Postfix, from userid 100393) id 8356E50E339; Fri, 15 Sep 2023 09:55:44 +0200 (CEST) Message-Id: <3ec48fde01e4ee6505f77908ba351bad200ae3d1.1694763684.git.lukas@wunner.de> From: Lukas Wunner Date: Wed, 15 Sep 2023 09:55:39 +0200 Subject: [PATCH] panic: Reenable preemption in WARN slowpath To: Peter Zijlstra , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org Cc: linux-kernel@vger.kernel.org X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on pete.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (pete.vger.email [0.0.0.0]); Fri, 15 Sep 2023 01:05:08 -0700 (PDT) Commit 5a5d7e9badd2 ("cpuidle: lib/bug: Disable rcu_is_watching() during WARN/BUG") amended warn_slowpath_fmt() to disable preemption until the WARN splat has been emitted. However the commit neglected to reenable preemption in the !fmt codepath, i.e. when a WARN splat is emitted without additional format string. One consequence is that users may see more splats than intended. E.g. a WARN splat emitted in a work item results in at least two extra splats: BUG: workqueue leaked lock or atomic (emitted by process_one_work()) BUG: scheduling while atomic (emitted by worker_thread() -> schedule()) Ironically the point of the commit was to *avoid* extra splats. ;) Fix it. Fixes: 5a5d7e9badd2 ("cpuidle: lib/bug: Disable rcu_is_watching() during WARN/BUG") Signed-off-by: Lukas Wunner Cc: stable@vger.kernel.org # v6.1+ Cc: Peter Zijlstra --- The original commit went in through the tip tree, hence submitting to tip maintainers. The commit was backported to v6.1-stable (even though it wasn't tagged for stable), hence this fix needs a stable designation. kernel/panic.c | 1 + 1 file changed, 1 insertion(+) diff --git a/kernel/panic.c b/kernel/panic.c index 07239d4..ffa037fa 100644 --- a/kernel/panic.c +++ b/kernel/panic.c @@ -697,6 +697,7 @@ void warn_slowpath_fmt(const char *file, int line, unsigned taint, if (!fmt) { __warn(file, line, __builtin_return_address(0), taint, NULL, NULL); + warn_rcu_exit(rcu); return; } -- 2.39.2