From: Alan Stern <stern@rowland.harvard.edu> To: Steven Rostedt <rostedt@goodmis.org> Cc: "Guilherme G. Piccoli" <gpiccoli@igalia.com>, akpm@linux-foundation.org, bhe@redhat.com, pmladek@suse.com, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, linux-hyperv@vger.kernel.org, netdev@vger.kernel.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, senozhatsky@chromium.org, tglx@linutronix.de, vgoyal@redhat.com, vkuznets@redhat.com, will@kernel.org, Sergei Shtylyov <sergei.shtylyov@gmail.com> Subject: Re: [PATCH v2 08/13] tracing: Improve panic/die notifiers Date: Tue, 16 Aug 2022 10:57:20 -0400 [thread overview] Message-ID: <YvuwUAGi6PvY5kmR@rowland.harvard.edu> (raw) In-Reply-To: <20220816101445.184ebb7c@gandalf.local.home> On Tue, Aug 16, 2022 at 10:14:45AM -0400, Steven Rostedt wrote: > On Tue, 19 Jul 2022 16:53:21 -0300 > "Guilherme G. Piccoli" <gpiccoli@igalia.com> wrote: > > > Sorry for the late review, but this fell to the bottom of my queue :-/ > > > +/* > > + * The idea is to execute the following die/panic callback early, in order > > + * to avoid showing irrelevant information in the trace (like other panic > > + * notifier functions); we are the 2nd to run, after hung_task/rcu_stall > > + * warnings get disabled (to prevent potential log flooding). > > + */ > > +static int trace_die_panic_handler(struct notifier_block *self, > > + unsigned long ev, void *unused) > > +{ > > + if (!ftrace_dump_on_oops) > > + goto out; > > + > > + if (self == &trace_die_notifier && ev != DIE_OOPS) > > + goto out; > > I really hate gotos that are not for clean ups. > > > + > > + ftrace_dump(ftrace_dump_on_oops); > > + > > +out: > > + return NOTIFY_DONE; > > +} > > + > > Just do: > > static int trace_die_panic_handler(struct notifier_block *self, > unsigned long ev, void *unused) > { > if (!ftrace_dump_on_oops) > return NOTIFY_DONE; > > /* The die notifier requires DIE_OOPS to trigger */ > if (self == &trace_die_notifier && ev != DIE_OOPS) > return NOTIFY_DONE; > > ftrace_dump(ftrace_dump_on_oops); > > return NOTIFY_DONE; > } Or better yet: if (ftrace_dump_on_oops) { /* The die notifier requires DIE_OOPS to trigger */ if (self != &trace_die_notifier || ev == DIE_OOPS) ftrace_dump(ftrace_dump_on_oops); } return NOTIFY_DONE; Alan Stern > Thanks, > > Other than that, Acked-by: Steven Rostedt (Google) <rostedt@goodmis.org> > > -- Steve
WARNING: multiple messages have this Message-ID (diff)
From: Alan Stern <stern@rowland.harvard.edu> To: Steven Rostedt <rostedt@goodmis.org> Cc: linux-hyperv@vger.kernel.org, halves@canonical.com, peterz@infradead.org, dave.hansen@linux.intel.com, feng.tang@intel.com, mikelley@microsoft.com, will@kernel.org, john.ogness@linutronix.de, bhe@redhat.com, corbet@lwn.net, paulmck@kernel.org, fabiomirmar@gmail.com, x86@kernel.org, mingo@redhat.com, dyoung@redhat.com, vgoyal@redhat.com, pmladek@suse.com, alejandro.j.jimenez@oracle.com, keescook@chromium.org, arnd@arndb.de, senozhatsky@chromium.org, bp@alien8.de, luto@kernel.org, hidehiro.kawai.ez@hitachi.com, tglx@linutronix.de, andriy.shevchenko@linux.intel.com, vkuznets@redhat.com, jgross@suse.com, netdev@vger.kernel.org, kernel@gpiccoli.net, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, d.hatayama@jp.fujitsu.com, Sergei Shtylyov <sergei.shtylyov@gmail.com>, mhiramat@kernel.org, kernel-dev@igalia.com, gregkh@linuxfoundation.org, akpm@linux-foundation.org Subject: Re: [PATCH v2 08/13] tracing: Improve panic/die notifiers Date: Tue, 16 Aug 2022 10:57:20 -0400 [thread overview] Message-ID: <YvuwUAGi6PvY5kmR@rowland.harvard.edu> (raw) In-Reply-To: <20220816101445.184ebb7c@gandalf.local.home> On Tue, Aug 16, 2022 at 10:14:45AM -0400, Steven Rostedt wrote: > On Tue, 19 Jul 2022 16:53:21 -0300 > "Guilherme G. Piccoli" <gpiccoli@igalia.com> wrote: > > > Sorry for the late review, but this fell to the bottom of my queue :-/ > > > +/* > > + * The idea is to execute the following die/panic callback early, in order > > + * to avoid showing irrelevant information in the trace (like other panic > > + * notifier functions); we are the 2nd to run, after hung_task/rcu_stall > > + * warnings get disabled (to prevent potential log flooding). > > + */ > > +static int trace_die_panic_handler(struct notifier_block *self, > > + unsigned long ev, void *unused) > > +{ > > + if (!ftrace_dump_on_oops) > > + goto out; > > + > > + if (self == &trace_die_notifier && ev != DIE_OOPS) > > + goto out; > > I really hate gotos that are not for clean ups. > > > + > > + ftrace_dump(ftrace_dump_on_oops); > > + > > +out: > > + return NOTIFY_DONE; > > +} > > + > > Just do: > > static int trace_die_panic_handler(struct notifier_block *self, > unsigned long ev, void *unused) > { > if (!ftrace_dump_on_oops) > return NOTIFY_DONE; > > /* The die notifier requires DIE_OOPS to trigger */ > if (self == &trace_die_notifier && ev != DIE_OOPS) > return NOTIFY_DONE; > > ftrace_dump(ftrace_dump_on_oops); > > return NOTIFY_DONE; > } Or better yet: if (ftrace_dump_on_oops) { /* The die notifier requires DIE_OOPS to trigger */ if (self != &trace_die_notifier || ev == DIE_OOPS) ftrace_dump(ftrace_dump_on_oops); } return NOTIFY_DONE; Alan Stern > Thanks, > > Other than that, Acked-by: Steven Rostedt (Google) <rostedt@goodmis.org> > > -- Steve _______________________________________________ kexec mailing list kexec@lists.infradead.org http://lists.infradead.org/mailman/listinfo/kexec
next prev parent reply other threads:[~2022-08-16 14:57 UTC|newest] Thread overview: 142+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-07-19 19:53 [PATCH v2 00/13] The panic notifiers refactor strikes back - fixes/clean-ups Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 01/13] ARM: Disable FIQs (but not IRQs) on CPUs shutdown paths Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-08-07 15:35 ` Guilherme G. Piccoli 2022-08-07 15:35 ` Guilherme G. Piccoli 2022-08-07 15:35 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 02/13] notifier: Add panic notifiers info and purge trailing whitespaces Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-08-03 9:21 ` Baoquan He 2022-08-03 9:21 ` Baoquan He 2022-07-19 19:53 ` [PATCH v2 03/13] firmware: google: Test spinlock on panic path to avoid lockups Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-08-07 15:38 ` Guilherme G. Piccoli 2022-08-07 15:38 ` Guilherme G. Piccoli 2022-08-08 5:07 ` Evan Green 2022-08-08 5:07 ` Evan Green 2022-08-08 15:14 ` Guilherme G. Piccoli 2022-08-08 15:14 ` Guilherme G. Piccoli 2022-08-08 15:26 ` Greg Kroah-Hartman 2022-08-08 15:26 ` Greg Kroah-Hartman 2022-08-08 15:37 ` Guilherme G. Piccoli 2022-08-08 15:37 ` Guilherme G. Piccoli 2022-08-10 12:54 ` Greg Kroah-Hartman 2022-08-10 12:54 ` Greg Kroah-Hartman 2022-07-19 19:53 ` [PATCH v2 04/13] soc: bcm: brcmstb: Document panic notifier action and remove useless header Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-20 23:00 ` Florian Fainelli 2022-07-20 23:00 ` Florian Fainelli 2022-07-21 13:17 ` Guilherme G. Piccoli 2022-07-21 13:17 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 05/13] alpha: Clean-up the panic notifier code Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 06/13] um: Improve panic notifiers consistency and ordering Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-08-07 15:40 ` Guilherme G. Piccoli 2022-08-07 15:40 ` Guilherme G. Piccoli 2022-08-07 15:40 ` Guilherme G. Piccoli 2022-08-09 18:09 ` Johannes Berg 2022-08-09 18:09 ` Johannes Berg 2022-08-09 18:09 ` Johannes Berg 2022-08-09 19:03 ` Guilherme G. Piccoli 2022-08-09 19:03 ` Guilherme G. Piccoli 2022-08-09 19:03 ` Guilherme G. Piccoli 2022-08-09 19:08 ` Johannes Berg 2022-08-09 19:08 ` Johannes Berg 2022-08-09 19:08 ` Johannes Berg 2022-08-09 19:45 ` Guilherme G. Piccoli 2022-08-09 19:45 ` Guilherme G. Piccoli 2022-08-09 19:45 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 07/13] parisc: Replace regular spinlock with spin_trylock on panic path Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-20 1:43 ` Jeroen Roovers 2022-07-20 1:43 ` Jeroen Roovers 2022-07-21 13:19 ` Guilherme G. Piccoli 2022-07-21 13:19 ` Guilherme G. Piccoli 2022-07-21 13:45 ` Helge Deller 2022-07-21 13:45 ` Helge Deller 2022-07-21 14:00 ` Guilherme G. Piccoli 2022-07-21 14:00 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 08/13] tracing: Improve panic/die notifiers Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-08-03 9:36 ` Baoquan He 2022-08-03 9:36 ` Baoquan He 2022-08-03 9:52 ` Baoquan He 2022-08-03 9:52 ` Baoquan He 2022-08-03 11:44 ` Guilherme G. Piccoli 2022-08-03 11:44 ` Guilherme G. Piccoli 2022-08-07 15:46 ` Guilherme G. Piccoli 2022-08-07 15:46 ` Guilherme G. Piccoli 2022-08-16 14:14 ` Steven Rostedt 2022-08-16 14:14 ` Steven Rostedt 2022-08-16 14:57 ` Alan Stern [this message] 2022-08-16 14:57 ` Alan Stern 2022-08-16 15:52 ` Steven Rostedt 2022-08-16 15:52 ` Steven Rostedt 2022-08-16 20:12 ` Guilherme G. Piccoli 2022-08-16 20:12 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 09/13] notifier: Show function names on notifier routines if DEBUG_NOTIFIERS is set Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-19 20:33 ` Arjan van de Ven 2022-07-19 20:33 ` Arjan van de Ven 2022-07-19 20:44 ` Guilherme G. Piccoli 2022-07-19 20:44 ` Guilherme G. Piccoli 2022-07-19 20:48 ` Arjan van de Ven 2022-07-19 20:48 ` Arjan van de Ven 2022-07-19 21:00 ` Guilherme G. Piccoli 2022-07-19 21:00 ` Guilherme G. Piccoli 2022-07-19 22:04 ` Arjan van de Ven 2022-07-19 22:04 ` Arjan van de Ven 2022-07-21 13:20 ` Guilherme G. Piccoli 2022-07-21 13:20 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 10/13] EDAC/altera: Skip the panic notifier if kdump is loaded Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-08-07 15:48 ` Guilherme G. Piccoli 2022-08-07 15:48 ` Guilherme G. Piccoli 2022-08-16 18:44 ` Dinh Nguyen 2022-08-16 18:44 ` Dinh Nguyen 2022-08-16 20:16 ` Guilherme G. Piccoli 2022-08-16 20:16 ` Guilherme G. Piccoli 2022-08-17 17:31 ` Borislav Petkov 2022-08-17 17:31 ` Borislav Petkov 2022-08-17 18:45 ` Guilherme G. Piccoli 2022-08-17 18:45 ` Guilherme G. Piccoli 2022-08-17 19:34 ` Borislav Petkov 2022-08-17 19:34 ` Borislav Petkov 2022-08-17 20:28 ` Guilherme G. Piccoli 2022-08-17 20:28 ` Guilherme G. Piccoli 2022-08-17 21:02 ` Borislav Petkov 2022-08-17 21:02 ` Borislav Petkov 2022-08-17 21:39 ` Guilherme G. Piccoli 2022-08-17 21:39 ` Guilherme G. Piccoli 2022-08-17 21:46 ` Borislav Petkov 2022-08-17 21:46 ` Borislav Petkov 2022-08-17 21:56 ` Guilherme G. Piccoli 2022-08-17 21:56 ` Guilherme G. Piccoli 2022-08-17 22:00 ` Borislav Petkov 2022-08-17 22:00 ` Borislav Petkov 2022-08-17 22:09 ` Guilherme G. Piccoli 2022-08-17 22:09 ` Guilherme G. Piccoli 2022-08-17 22:19 ` Borislav Petkov 2022-08-17 22:19 ` Borislav Petkov 2022-08-17 22:49 ` Guilherme G. Piccoli 2022-08-17 22:49 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 11/13] video/hyperv_fb: Avoid taking busy spinlock on panic path Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-25 18:09 ` Michael Kelley (LINUX) 2022-07-25 18:09 ` Michael Kelley (LINUX) 2022-07-25 22:05 ` Guilherme G. Piccoli 2022-07-25 22:05 ` Guilherme G. Piccoli 2022-07-19 19:53 ` [PATCH v2 12/13] drivers/hv/vmbus, video/hyperv_fb: Untangle and refactor Hyper-V panic notifiers Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli 2022-07-25 18:55 ` Michael Kelley (LINUX) 2022-07-25 18:55 ` Michael Kelley (LINUX) 2022-07-19 19:53 ` [PATCH v2 13/13] panic: Fixes the panic_print NMI backtrace setting Guilherme G. Piccoli 2022-07-19 19:53 ` Guilherme G. Piccoli
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=YvuwUAGi6PvY5kmR@rowland.harvard.edu \ --to=stern@rowland.harvard.edu \ --cc=akpm@linux-foundation.org \ --cc=alejandro.j.jimenez@oracle.com \ --cc=andriy.shevchenko@linux.intel.com \ --cc=arnd@arndb.de \ --cc=bhe@redhat.com \ --cc=bp@alien8.de \ --cc=corbet@lwn.net \ --cc=d.hatayama@jp.fujitsu.com \ --cc=dave.hansen@linux.intel.com \ --cc=dyoung@redhat.com \ --cc=fabiomirmar@gmail.com \ --cc=feng.tang@intel.com \ --cc=gpiccoli@igalia.com \ --cc=gregkh@linuxfoundation.org \ --cc=halves@canonical.com \ --cc=hidehiro.kawai.ez@hitachi.com \ --cc=jgross@suse.com \ --cc=john.ogness@linutronix.de \ --cc=keescook@chromium.org \ --cc=kernel-dev@igalia.com \ --cc=kernel@gpiccoli.net \ --cc=kexec@lists.infradead.org \ --cc=linux-hyperv@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=luto@kernel.org \ --cc=mhiramat@kernel.org \ --cc=mikelley@microsoft.com \ --cc=mingo@redhat.com \ --cc=netdev@vger.kernel.org \ --cc=paulmck@kernel.org \ --cc=peterz@infradead.org \ --cc=pmladek@suse.com \ --cc=rostedt@goodmis.org \ --cc=senozhatsky@chromium.org \ --cc=sergei.shtylyov@gmail.com \ --cc=tglx@linutronix.de \ --cc=vgoyal@redhat.com \ --cc=vkuznets@redhat.com \ --cc=will@kernel.org \ --cc=x86@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.