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 Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 44D31C4332F for ; Thu, 28 Apr 2022 08:14:31 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1343874AbiD1IRl (ORCPT ); Thu, 28 Apr 2022 04:17:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34802 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232726AbiD1IRi (ORCPT ); Thu, 28 Apr 2022 04:17:38 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 4BCF0771CD; Thu, 28 Apr 2022 01:14:24 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DB9C31474; Thu, 28 Apr 2022 01:14:23 -0700 (PDT) Received: from [10.57.12.231] (unknown [10.57.12.231]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 801DE3F774; Thu, 28 Apr 2022 01:14:12 -0700 (PDT) Message-ID: <7956ab00-66b6-bd89-dcc0-f10cf2741e4d@arm.com> Date: Thu, 28 Apr 2022 09:14:11 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.8.1 Subject: Re: [PATCH 20/30] panic: Add the panic informational notifier list To: "Guilherme G. Piccoli" , akpm@linux-foundation.org, bhe@redhat.com, pmladek@suse.com, kexec@lists.infradead.org Cc: linux-kernel@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, coresight@lists.linaro.org, linuxppc-dev@lists.ozlabs.org, linux-alpha@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-leds@vger.kernel.org, linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org, linux-pm@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-s390@vger.kernel.org, linux-tegra@vger.kernel.org, linux-um@lists.infradead.org, linux-xtensa@linux-xtensa.org, netdev@vger.kernel.org, openipmi-developer@lists.sourceforge.net, rcu@vger.kernel.org, sparclinux@vger.kernel.org, xen-devel@lists.xenproject.org, x86@kernel.org, kernel-dev@igalia.com, kernel@gpiccoli.net, halves@canonical.com, fabiomirmar@gmail.com, alejandro.j.jimenez@oracle.com, andriy.shevchenko@linux.intel.com, arnd@arndb.de, bp@alien8.de, corbet@lwn.net, d.hatayama@jp.fujitsu.com, dave.hansen@linux.intel.com, dyoung@redhat.com, feng.tang@intel.com, gregkh@linuxfoundation.org, mikelley@microsoft.com, hidehiro.kawai.ez@hitachi.com, jgross@suse.com, john.ogness@linutronix.de, keescook@chromium.org, luto@kernel.org, mhiramat@kernel.org, mingo@redhat.com, paulmck@kernel.org, peterz@infradead.org, rostedt@goodmis.org, senozhatsky@chromium.org, stern@rowland.harvard.edu, tglx@linutronix.de, vgoyal@redhat.com, vkuznets@redhat.com, will@kernel.org, Benjamin Herrenschmidt , Catalin Marinas , Florian Fainelli , Frederic Weisbecker , "H. Peter Anvin" , Hari Bathini , Joel Fernandes , Jonathan Hunter , Josh Triplett , Lai Jiangshan , Leo Yan , Mathieu Desnoyers , Mathieu Poirier , Michael Ellerman , Mike Leach , Mikko Perttunen , Neeraj Upadhyay , Nicholas Piggin , Paul Mackerras , Thierry Reding , Thomas Bogendoerfer References: <20220427224924.592546-1-gpiccoli@igalia.com> <20220427224924.592546-21-gpiccoli@igalia.com> From: Suzuki K Poulose In-Reply-To: <20220427224924.592546-21-gpiccoli@igalia.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-remoteproc@vger.kernel.org On 27/04/2022 23:49, Guilherme G. Piccoli wrote: > The goal of this new panic notifier is to allow its users to > register callbacks to run earlier in the panic path than they > currently do. This aims at informational mechanisms, like dumping > kernel offsets and showing device error data (in case it's simple > registers reading, for example) as well as mechanisms to disable > log flooding (like hung_task detector / RCU warnings) and the > tracing dump_on_oops (when enabled). > > Any (non-invasive) information that should be provided before > kmsg_dump() as well as log flooding preventing code should fit > here, as long it offers relatively low risk for kdump. > > For now, the patch is almost a no-op, although it changes a bit > the ordering in which some panic notifiers are executed - specially > affected by this are the notifiers responsible for disabling the > hung_task detector / RCU warnings, which now run first. In a > subsequent patch, the panic path will be refactored, then the > panic informational notifiers will effectively run earlier, > before ksmg_dump() (and usually before kdump as well). > > We also defer documenting it all properly in the subsequent > refactor patch. Finally, while at it, we removed some useless > header inclusions too. > > Cc: Benjamin Herrenschmidt > Cc: Catalin Marinas > Cc: Florian Fainelli > Cc: Frederic Weisbecker > Cc: "H. Peter Anvin" > Cc: Hari Bathini > Cc: Joel Fernandes > Cc: Jonathan Hunter > Cc: Josh Triplett > Cc: Lai Jiangshan > Cc: Leo Yan > Cc: Mathieu Desnoyers > Cc: Mathieu Poirier > Cc: Michael Ellerman > Cc: Mike Leach > Cc: Mikko Perttunen > Cc: Neeraj Upadhyay > Cc: Nicholas Piggin > Cc: Paul Mackerras > Cc: Suzuki K Poulose > Cc: Thierry Reding > Cc: Thomas Bogendoerfer > Signed-off-by: Guilherme G. Piccoli > --- > arch/arm64/kernel/setup.c | 2 +- > arch/mips/kernel/relocate.c | 2 +- > arch/powerpc/kernel/setup-common.c | 2 +- > arch/x86/kernel/setup.c | 2 +- > drivers/bus/brcmstb_gisb.c | 2 +- > drivers/hwtracing/coresight/coresight-cpu-debug.c | 4 ++-- > drivers/soc/tegra/ari-tegra186.c | 3 ++- > include/linux/panic_notifier.h | 1 + > kernel/hung_task.c | 3 ++- > kernel/panic.c | 4 ++++ > kernel/rcu/tree.c | 1 - > kernel/rcu/tree_stall.h | 3 ++- > kernel/trace/trace.c | 2 +- > 13 files changed, 19 insertions(+), 12 deletions(-) > ... > diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c > index 1874df7c6a73..7b1012454525 100644 > --- a/drivers/hwtracing/coresight/coresight-cpu-debug.c > +++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c > @@ -535,7 +535,7 @@ static int debug_func_init(void) > &debug_func_knob_fops); > > /* Register function to be called for panic */ > - ret = atomic_notifier_chain_register(&panic_notifier_list, > + ret = atomic_notifier_chain_register(&panic_info_list, > &debug_notifier); > if (ret) { > pr_err("%s: unable to register notifier: %d\n", > @@ -552,7 +552,7 @@ static int debug_func_init(void) > > static void debug_func_exit(void) > { > - atomic_notifier_chain_unregister(&panic_notifier_list, > + atomic_notifier_chain_unregister(&panic_info_list, > &debug_notifier); > debugfs_remove_recursive(debug_debugfs_dir); > } Acked-by: Suzuki K Poulose 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 Received: from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id BEE73C433FE for ; Thu, 28 Apr 2022 08:46:29 +0000 (UTC) Received: from boromir.ozlabs.org (localhost [IPv6:::1]) by lists.ozlabs.org (Postfix) with ESMTP id 4Kpq3S3Gmjz3cBc for ; Thu, 28 Apr 2022 18:46:28 +1000 (AEST) Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=arm.com (client-ip=217.140.110.172; helo=foss.arm.com; envelope-from=suzuki.poulose@arm.com; receiver=) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lists.ozlabs.org (Postfix) with ESMTP id 4KppM449YKz2xt0 for ; Thu, 28 Apr 2022 18:14:55 +1000 (AEST) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id DAD1D13D5; Thu, 28 Apr 2022 01:14:23 -0700 (PDT) Received: from [10.57.12.231] (unknown [10.57.12.231]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 801DE3F774; Thu, 28 Apr 2022 01:14:12 -0700 (PDT) Message-ID: <7956ab00-66b6-bd89-dcc0-f10cf2741e4d@arm.com> Date: Thu, 28 Apr 2022 09:14:11 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.8.1 Subject: Re: [PATCH 20/30] panic: Add the panic informational notifier list To: "Guilherme G. Piccoli" , akpm@linux-foundation.org, bhe@redhat.com, pmladek@suse.com, kexec@lists.infradead.org References: <20220427224924.592546-1-gpiccoli@igalia.com> <20220427224924.592546-21-gpiccoli@igalia.com> From: Suzuki K Poulose In-Reply-To: <20220427224924.592546-21-gpiccoli@igalia.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Mailman-Approved-At: Thu, 28 Apr 2022 18:45:42 +1000 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-hyperv@vger.kernel.org, halves@canonical.com, gregkh@linuxfoundation.org, peterz@infradead.org, alejandro.j.jimenez@oracle.com, linux-remoteproc@vger.kernel.org, feng.tang@intel.com, Joel Fernandes , linux-mips@vger.kernel.org, hidehiro.kawai.ez@hitachi.com, Thierry Reding , Paul Mackerras , "H. Peter Anvin" , sparclinux@vger.kernel.org, will@kernel.org, tglx@linutronix.de, linux-leds@vger.kernel.org, linux-s390@vger.kernel.org, Florian Fainelli , mikelley@microsoft.com, john.ogness@linutronix.de, corbet@lwn.net, paulmck@kernel.org, fabiomirmar@gmail.com, x86@kernel.org, Jonathan Hunter , mingo@redhat.com, bcm-kernel-feedback-list@broadcom.com, Hari Bathini , Catalin Marinas , xen-devel@lists.xenproject.org, dyoung@redhat.com, Frederic Weisbecker , vgoyal@redhat.com, Mike Leach , linux-xtensa@linux-xtensa.org, Neeraj Upadhyay , dave.hansen@linux.intel.com, Mikko Perttunen , keescook@chromium.org, arnd@arndb.de, linux-pm@vger.kernel.org, Lai Jiangshan , coresight@lists.linaro.org, Leo Yan , linux-um@lists.infradead.org, Josh Triplett , rostedt@goodmis.org, rcu@vger.kernel.org, bp@alien8.de, Nicholas Piggin , luto@kernel.org, linux-tegra@vger.kernel.org, openipmi-developer@lists.sourceforge.net, andriy.shevchenko@linux.intel.com, linux-arm-kernel@lists.infradead.org, linux-edac@vger.kernel.org, jgross@suse.com, Thomas Bogendoerfer , Mathieu Poirier , linux-parisc@vger.kernel.org, netdev@vger.kernel.org, kernel@gpiccoli.net, linux-kernel@vger.kernel.org, stern@rowland.harvard.edu, senozhatsky@chromium.org, d.hatayama@jp.fujitsu.com, mhiramat@kernel.org, kernel-dev@igalia.com, linux-alpha@vger.kernel.org, Mathieu Desnoyers , vkuznets@redhat.com, linuxppc-dev@lists.ozlabs.org Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On 27/04/2022 23:49, Guilherme G. Piccoli wrote: > The goal of this new panic notifier is to allow its users to > register callbacks to run earlier in the panic path than they > currently do. This aims at informational mechanisms, like dumping > kernel offsets and showing device error data (in case it's simple > registers reading, for example) as well as mechanisms to disable > log flooding (like hung_task detector / RCU warnings) and the > tracing dump_on_oops (when enabled). > > Any (non-invasive) information that should be provided before > kmsg_dump() as well as log flooding preventing code should fit > here, as long it offers relatively low risk for kdump. > > For now, the patch is almost a no-op, although it changes a bit > the ordering in which some panic notifiers are executed - specially > affected by this are the notifiers responsible for disabling the > hung_task detector / RCU warnings, which now run first. In a > subsequent patch, the panic path will be refactored, then the > panic informational notifiers will effectively run earlier, > before ksmg_dump() (and usually before kdump as well). > > We also defer documenting it all properly in the subsequent > refactor patch. Finally, while at it, we removed some useless > header inclusions too. > > Cc: Benjamin Herrenschmidt > Cc: Catalin Marinas > Cc: Florian Fainelli > Cc: Frederic Weisbecker > Cc: "H. Peter Anvin" > Cc: Hari Bathini > Cc: Joel Fernandes > Cc: Jonathan Hunter > Cc: Josh Triplett > Cc: Lai Jiangshan > Cc: Leo Yan > Cc: Mathieu Desnoyers > Cc: Mathieu Poirier > Cc: Michael Ellerman > Cc: Mike Leach > Cc: Mikko Perttunen > Cc: Neeraj Upadhyay > Cc: Nicholas Piggin > Cc: Paul Mackerras > Cc: Suzuki K Poulose > Cc: Thierry Reding > Cc: Thomas Bogendoerfer > Signed-off-by: Guilherme G. Piccoli > --- > arch/arm64/kernel/setup.c | 2 +- > arch/mips/kernel/relocate.c | 2 +- > arch/powerpc/kernel/setup-common.c | 2 +- > arch/x86/kernel/setup.c | 2 +- > drivers/bus/brcmstb_gisb.c | 2 +- > drivers/hwtracing/coresight/coresight-cpu-debug.c | 4 ++-- > drivers/soc/tegra/ari-tegra186.c | 3 ++- > include/linux/panic_notifier.h | 1 + > kernel/hung_task.c | 3 ++- > kernel/panic.c | 4 ++++ > kernel/rcu/tree.c | 1 - > kernel/rcu/tree_stall.h | 3 ++- > kernel/trace/trace.c | 2 +- > 13 files changed, 19 insertions(+), 12 deletions(-) > ... > diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c > index 1874df7c6a73..7b1012454525 100644 > --- a/drivers/hwtracing/coresight/coresight-cpu-debug.c > +++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c > @@ -535,7 +535,7 @@ static int debug_func_init(void) > &debug_func_knob_fops); > > /* Register function to be called for panic */ > - ret = atomic_notifier_chain_register(&panic_notifier_list, > + ret = atomic_notifier_chain_register(&panic_info_list, > &debug_notifier); > if (ret) { > pr_err("%s: unable to register notifier: %d\n", > @@ -552,7 +552,7 @@ static int debug_func_init(void) > > static void debug_func_exit(void) > { > - atomic_notifier_chain_unregister(&panic_notifier_list, > + atomic_notifier_chain_unregister(&panic_info_list, > &debug_notifier); > debugfs_remove_recursive(debug_debugfs_dir); > } Acked-by: Suzuki K Poulose From mboxrd@z Thu Jan 1 00:00:00 1970 From: Suzuki K Poulose Date: Thu, 28 Apr 2022 09:14:11 +0100 Subject: [PATCH 20/30] panic: Add the panic informational notifier list In-Reply-To: <20220427224924.592546-21-gpiccoli@igalia.com> References: <20220427224924.592546-1-gpiccoli@igalia.com> <20220427224924.592546-21-gpiccoli@igalia.com> Message-ID: <7956ab00-66b6-bd89-dcc0-f10cf2741e4d@arm.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: kexec@lists.infradead.org On 27/04/2022 23:49, Guilherme G. Piccoli wrote: > The goal of this new panic notifier is to allow its users to > register callbacks to run earlier in the panic path than they > currently do. This aims at informational mechanisms, like dumping > kernel offsets and showing device error data (in case it's simple > registers reading, for example) as well as mechanisms to disable > log flooding (like hung_task detector / RCU warnings) and the > tracing dump_on_oops (when enabled). > > Any (non-invasive) information that should be provided before > kmsg_dump() as well as log flooding preventing code should fit > here, as long it offers relatively low risk for kdump. > > For now, the patch is almost a no-op, although it changes a bit > the ordering in which some panic notifiers are executed - specially > affected by this are the notifiers responsible for disabling the > hung_task detector / RCU warnings, which now run first. In a > subsequent patch, the panic path will be refactored, then the > panic informational notifiers will effectively run earlier, > before ksmg_dump() (and usually before kdump as well). > > We also defer documenting it all properly in the subsequent > refactor patch. Finally, while at it, we removed some useless > header inclusions too. > > Cc: Benjamin Herrenschmidt > Cc: Catalin Marinas > Cc: Florian Fainelli > Cc: Frederic Weisbecker > Cc: "H. Peter Anvin" > Cc: Hari Bathini > Cc: Joel Fernandes > Cc: Jonathan Hunter > Cc: Josh Triplett > Cc: Lai Jiangshan > Cc: Leo Yan > Cc: Mathieu Desnoyers > Cc: Mathieu Poirier > Cc: Michael Ellerman > Cc: Mike Leach > Cc: Mikko Perttunen > Cc: Neeraj Upadhyay > Cc: Nicholas Piggin > Cc: Paul Mackerras > Cc: Suzuki K Poulose > Cc: Thierry Reding > Cc: Thomas Bogendoerfer > Signed-off-by: Guilherme G. Piccoli > --- > arch/arm64/kernel/setup.c | 2 +- > arch/mips/kernel/relocate.c | 2 +- > arch/powerpc/kernel/setup-common.c | 2 +- > arch/x86/kernel/setup.c | 2 +- > drivers/bus/brcmstb_gisb.c | 2 +- > drivers/hwtracing/coresight/coresight-cpu-debug.c | 4 ++-- > drivers/soc/tegra/ari-tegra186.c | 3 ++- > include/linux/panic_notifier.h | 1 + > kernel/hung_task.c | 3 ++- > kernel/panic.c | 4 ++++ > kernel/rcu/tree.c | 1 - > kernel/rcu/tree_stall.h | 3 ++- > kernel/trace/trace.c | 2 +- > 13 files changed, 19 insertions(+), 12 deletions(-) > ... > diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c > index 1874df7c6a73..7b1012454525 100644 > --- a/drivers/hwtracing/coresight/coresight-cpu-debug.c > +++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c > @@ -535,7 +535,7 @@ static int debug_func_init(void) > &debug_func_knob_fops); > > /* Register function to be called for panic */ > - ret = atomic_notifier_chain_register(&panic_notifier_list, > + ret = atomic_notifier_chain_register(&panic_info_list, > &debug_notifier); > if (ret) { > pr_err("%s: unable to register notifier: %d\n", > @@ -552,7 +552,7 @@ static int debug_func_init(void) > > static void debug_func_exit(void) > { > - atomic_notifier_chain_unregister(&panic_notifier_list, > + atomic_notifier_chain_unregister(&panic_info_list, > &debug_notifier); > debugfs_remove_recursive(debug_debugfs_dir); > } Acked-by: Suzuki K Poulose From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-ID: <7956ab00-66b6-bd89-dcc0-f10cf2741e4d@arm.com> Date: Thu, 28 Apr 2022 09:14:11 +0100 MIME-Version: 1.0 Subject: Re: [PATCH 20/30] panic: Add the panic informational notifier list References: <20220427224924.592546-1-gpiccoli@igalia.com> <20220427224924.592546-21-gpiccoli@igalia.com> From: Suzuki K Poulose In-Reply-To: <20220427224924.592546-21-gpiccoli@igalia.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: "linux-um" Errors-To: linux-um-bounces+geert=linux-m68k.org@lists.infradead.org To: "Guilherme G. Piccoli" , akpm@linux-foundation.org, bhe@redhat.com, pmladek@suse.com, kexec@lists.infradead.org Cc: linux-kernel@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, coresight@lists.linaro.org, linuxppc-dev@lists.ozlabs.org, linux-alpha@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-leds@vger.kernel.org, linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org, linux-pm@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-s390@vger.kernel.org, linux-tegra@vger.kernel.org, linux-um@lists.infradead.org, linux-xtensa@linux-xtensa.org, netdev@vger.kernel.org, openipmi-developer@lists.sourceforge.net, rcu@vger.kernel.org, sparclinux@vger.kernel.org, xen-devel@lists.xenproject.org, x86@kernel.org, kernel-dev@igalia.com, kernel@gpiccoli.net, halves@canonical.com, fabiomirmar@gmail.com, alejandro.j.jimenez@oracle.com, andriy.shevchenko@linux.intel.com, arnd@arndb.de, bp@alien8.de, corbet@lwn.net, d.hatayama@jp.fujitsu.com, dave.hansen@linux.intel.com, dyoung@redhat.com, feng.tang@intel.com, gregkh@linuxfoundation.org, mikelley@microsoft.com, hidehiro.kawai.ez@hitachi.com, jgross@suse.com, john.ogness@linutronix.de, keescook@chromium.org, luto@kernel.org, mhiramat@kernel.org, mingo@redhat.com, paulmck@kernel.org, peterz@infradead.org, rostedt@goodmis.org, senozhatsky@chromium.org, stern@rowland.harvard.edu, tglx@linutronix.de, vgoyal@redhat.com, vkuznets@redhat.com, will@kernel.org, Benjamin Herrenschmidt , Catalin Marinas , Florian Fainelli , Frederic Weisbecker , "H. Peter Anvin" , Hari Bathini , Joel Fernandes , Jonathan Hunter , Josh Triplett , Lai Jiangshan , Leo Yan , Mathieu Desnoyers , Mathieu Poirier , Michael Ellerman , Mike Leach , Mikko Perttunen , Neeraj Upadhyay , Nicholas Piggin , Paul Mackerras , Thierry Reding , Thomas Bogendoerfer On 27/04/2022 23:49, Guilherme G. Piccoli wrote: > The goal of this new panic notifier is to allow its users to > register callbacks to run earlier in the panic path than they > currently do. This aims at informational mechanisms, like dumping > kernel offsets and showing device error data (in case it's simple > registers reading, for example) as well as mechanisms to disable > log flooding (like hung_task detector / RCU warnings) and the > tracing dump_on_oops (when enabled). > > Any (non-invasive) information that should be provided before > kmsg_dump() as well as log flooding preventing code should fit > here, as long it offers relatively low risk for kdump. > > For now, the patch is almost a no-op, although it changes a bit > the ordering in which some panic notifiers are executed - specially > affected by this are the notifiers responsible for disabling the > hung_task detector / RCU warnings, which now run first. In a > subsequent patch, the panic path will be refactored, then the > panic informational notifiers will effectively run earlier, > before ksmg_dump() (and usually before kdump as well). > > We also defer documenting it all properly in the subsequent > refactor patch. Finally, while at it, we removed some useless > header inclusions too. > > Cc: Benjamin Herrenschmidt > Cc: Catalin Marinas > Cc: Florian Fainelli > Cc: Frederic Weisbecker > Cc: "H. Peter Anvin" > Cc: Hari Bathini > Cc: Joel Fernandes > Cc: Jonathan Hunter > Cc: Josh Triplett > Cc: Lai Jiangshan > Cc: Leo Yan > Cc: Mathieu Desnoyers > Cc: Mathieu Poirier > Cc: Michael Ellerman > Cc: Mike Leach > Cc: Mikko Perttunen > Cc: Neeraj Upadhyay > Cc: Nicholas Piggin > Cc: Paul Mackerras > Cc: Suzuki K Poulose > Cc: Thierry Reding > Cc: Thomas Bogendoerfer > Signed-off-by: Guilherme G. Piccoli > --- > arch/arm64/kernel/setup.c | 2 +- > arch/mips/kernel/relocate.c | 2 +- > arch/powerpc/kernel/setup-common.c | 2 +- > arch/x86/kernel/setup.c | 2 +- > drivers/bus/brcmstb_gisb.c | 2 +- > drivers/hwtracing/coresight/coresight-cpu-debug.c | 4 ++-- > drivers/soc/tegra/ari-tegra186.c | 3 ++- > include/linux/panic_notifier.h | 1 + > kernel/hung_task.c | 3 ++- > kernel/panic.c | 4 ++++ > kernel/rcu/tree.c | 1 - > kernel/rcu/tree_stall.h | 3 ++- > kernel/trace/trace.c | 2 +- > 13 files changed, 19 insertions(+), 12 deletions(-) > ... > diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c > index 1874df7c6a73..7b1012454525 100644 > --- a/drivers/hwtracing/coresight/coresight-cpu-debug.c > +++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c > @@ -535,7 +535,7 @@ static int debug_func_init(void) > &debug_func_knob_fops); > > /* Register function to be called for panic */ > - ret = atomic_notifier_chain_register(&panic_notifier_list, > + ret = atomic_notifier_chain_register(&panic_info_list, > &debug_notifier); > if (ret) { > pr_err("%s: unable to register notifier: %d\n", > @@ -552,7 +552,7 @@ static int debug_func_init(void) > > static void debug_func_exit(void) > { > - atomic_notifier_chain_unregister(&panic_notifier_list, > + atomic_notifier_chain_unregister(&panic_info_list, > &debug_notifier); > debugfs_remove_recursive(debug_debugfs_dir); > } Acked-by: Suzuki K Poulose _______________________________________________ linux-um mailing list linux-um@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-um From mboxrd@z Thu Jan 1 00:00:00 1970 From: Suzuki K Poulose Subject: Re: [PATCH 20/30] panic: Add the panic informational notifier list Date: Thu, 28 Apr 2022 09:14:11 +0100 Message-ID: <7956ab00-66b6-bd89-dcc0-f10cf2741e4d@arm.com> References: <20220427224924.592546-1-gpiccoli@igalia.com> <20220427224924.592546-21-gpiccoli@igalia.com> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20220427224924.592546-21-gpiccoli@igalia.com> List-ID: Content-Type: text/plain; charset="us-ascii"; format="flowed" To: "Guilherme G. Piccoli" , akpm@linux-foundation.org, bhe@redhat.com, pmladek@suse.com, kexec@lists.infradead.org Cc: linux-kernel@vger.kernel.org, bcm-kernel-feedback-list@broadcom.com, coresight@lists.linaro.org, linuxppc-dev@lists.ozlabs.org, linux-alpha@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org, linux-leds@vger.kernel.org, linux-mips@vger.kernel.org, linux-parisc@vger.kernel.org, linux-pm@vger.kernel.org, linux-remoteproc@vger.kernel.org, linux-s390@vger.kernel.org, linux-tegra@vger.kernel.org, linux-um@lists.infradead.org, linux-xtensa@linux-xtensa.org, netdev@vger.kernel.org, openipmi-developer@lists.sourceforge.net, rcu@vger.kernel.org, sparclinux@vger.kernel.org, xen-devel@lists.xenproject.org, x86@kernel.org, kernel-dev@igalia.com, kernel@gpiccoli.net, halves@canonical.com, fabiomirmar@gmail.com, alejandro.j.jimenez@ora On 27/04/2022 23:49, Guilherme G. Piccoli wrote: > The goal of this new panic notifier is to allow its users to > register callbacks to run earlier in the panic path than they > currently do. This aims at informational mechanisms, like dumping > kernel offsets and showing device error data (in case it's simple > registers reading, for example) as well as mechanisms to disable > log flooding (like hung_task detector / RCU warnings) and the > tracing dump_on_oops (when enabled). > > Any (non-invasive) information that should be provided before > kmsg_dump() as well as log flooding preventing code should fit > here, as long it offers relatively low risk for kdump. > > For now, the patch is almost a no-op, although it changes a bit > the ordering in which some panic notifiers are executed - specially > affected by this are the notifiers responsible for disabling the > hung_task detector / RCU warnings, which now run first. In a > subsequent patch, the panic path will be refactored, then the > panic informational notifiers will effectively run earlier, > before ksmg_dump() (and usually before kdump as well). > > We also defer documenting it all properly in the subsequent > refactor patch. Finally, while at it, we removed some useless > header inclusions too. > > Cc: Benjamin Herrenschmidt > Cc: Catalin Marinas > Cc: Florian Fainelli > Cc: Frederic Weisbecker > Cc: "H. Peter Anvin" > Cc: Hari Bathini > Cc: Joel Fernandes > Cc: Jonathan Hunter > Cc: Josh Triplett > Cc: Lai Jiangshan > Cc: Leo Yan > Cc: Mathieu Desnoyers > Cc: Mathieu Poirier > Cc: Michael Ellerman > Cc: Mike Leach > Cc: Mikko Perttunen > Cc: Neeraj Upadhyay > Cc: Nicholas Piggin > Cc: Paul Mackerras > Cc: Suzuki K Poulose > Cc: Thierry Reding > Cc: Thomas Bogendoerfer > Signed-off-by: Guilherme G. Piccoli > --- > arch/arm64/kernel/setup.c | 2 +- > arch/mips/kernel/relocate.c | 2 +- > arch/powerpc/kernel/setup-common.c | 2 +- > arch/x86/kernel/setup.c | 2 +- > drivers/bus/brcmstb_gisb.c | 2 +- > drivers/hwtracing/coresight/coresight-cpu-debug.c | 4 ++-- > drivers/soc/tegra/ari-tegra186.c | 3 ++- > include/linux/panic_notifier.h | 1 + > kernel/hung_task.c | 3 ++- > kernel/panic.c | 4 ++++ > kernel/rcu/tree.c | 1 - > kernel/rcu/tree_stall.h | 3 ++- > kernel/trace/trace.c | 2 +- > 13 files changed, 19 insertions(+), 12 deletions(-) > ... > diff --git a/drivers/hwtracing/coresight/coresight-cpu-debug.c b/drivers/hwtracing/coresight/coresight-cpu-debug.c > index 1874df7c6a73..7b1012454525 100644 > --- a/drivers/hwtracing/coresight/coresight-cpu-debug.c > +++ b/drivers/hwtracing/coresight/coresight-cpu-debug.c > @@ -535,7 +535,7 @@ static int debug_func_init(void) > &debug_func_knob_fops); > > /* Register function to be called for panic */ > - ret = atomic_notifier_chain_register(&panic_notifier_list, > + ret = atomic_notifier_chain_register(&panic_info_list, > &debug_notifier); > if (ret) { > pr_err("%s: unable to register notifier: %d\n", > @@ -552,7 +552,7 @@ static int debug_func_init(void) > > static void debug_func_exit(void) > { > - atomic_notifier_chain_unregister(&panic_notifier_list, > + atomic_notifier_chain_unregister(&panic_info_list, > &debug_notifier); > debugfs_remove_recursive(debug_debugfs_dir); > } Acked-by: Suzuki K Poulose