On 19/08/2022 19:17, Guilherme G. Piccoli wrote: > Commit 8d470a45d1a6 ("panic: add option to dump all CPUs backtraces in panic_print") > introduced a setting for the "panic_print" kernel parameter to allow > users to request a NMI backtrace on panic. Problem is that the panic_print > handling happens after the secondary CPUs are already disabled, hence > this option ended-up being kind of a no-op - kernel skips the NMI trace > in idling CPUs, which is the case of offline CPUs. > > Fix it by checking the NMI backtrace bit in the panic_print prior to > the CPU disabling function. > > Fixes: 8d470a45d1a6 ("panic: add option to dump all CPUs backtraces in panic_print") > Cc: Feng Tang <feng.tang@xxxxxxxxx> > Cc: Petr Mladek <pmladek@xxxxxxxx> > Signed-off-by: Guilherme G. Piccoli <gpiccoli@xxxxxxxxxx> > > --- > > V3: > - No changes. > > V2: > - new patch, there was no V1 of this one. > > Hi folks, thanks upfront for reviews. This is a new patch, fixing an issue > I found in my tests, so I shoved it into this fixes series. > > Notice that while at it, I got rid of the "crash_kexec_post_notifiers" > local copy in panic(). This was introduced by commit b26e27ddfd2a > ("kexec: use core_param for crash_kexec_post_notifiers boot option"), > but it is not clear from comments or commit message why this local copy > is required. > > My understanding is that it's a mechanism to prevent some concurrency, > in case some other CPU modify this variable while panic() is running. > I find it very unlikely, hence I removed it - but if people consider > this copy needed, I can respin this patch and keep it, even providing a > comment about that, in order to be explict about its need. > > Let me know your thoughts! Cheers, > > Guilherme > > > kernel/panic.c | 47 +++++++++++++++++++++++++++-------------------- > 1 file changed, 27 insertions(+), 20 deletions(-) > [...] Hi Andrew, sorry for the ping. Does the patch makes sense for you? Any comments are much appreciated! Tnx in advance, Guilherme