[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20141104184102.4ecb3533@gandalf.local.home>
Date: Tue, 4 Nov 2014 18:41:02 -0500
From: Steven Rostedt <rostedt@...dmis.org>
To: Jiri Kosina <jkosina@...e.cz>
Cc: linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...nel.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Petr Mladek <pmladek@...e.cz>,
"H. Peter Anvin" <hpa@...or.com>,
Thomas Gleixner <tglx@...utronix.de>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>
Subject: Re: [RFC][PATCH 12/12 v3] x86/nmi: Perform a safe NMI stack trace
on all CPUs
On Wed, 5 Nov 2014 00:05:12 +0100 (CET)
Jiri Kosina <jkosina@...e.cz> wrote:
> On Tue, 4 Nov 2014, Steven Rostedt wrote:
>
> > From: "Steven Rostedt (Red Hat)" <rostedt@...dmis.org>
> >
> > When trigger_all_cpu_backtrace() is called on x86, it will trigger an
> > NMI on each CPU and call show_regs(). But this can lead to a hard lock
> > up if the NMI comes in on another printk().
> >
> > In order to avoid this, when the NMI triggers, it switches the printk
> > routine for that CPU to call a NMI safe printk function that records the
> > printk in a per_cpu seq_buf descriptor. After all NMIs have finished
> > recording its data, the trace_seqs are printed in a safe context.
Hmm, I need to update the change log to say seq_bufs instead of
trace_seqs.
> >
> > Link: http://lkml.kernel.org/p/20140619213952.360076309@goodmis.org
> >
> > Acked-by: Paul E. McKenney <paulmck@...ux.vnet.ibm.com>
> > Signed-off-by: Steven Rostedt <rostedt@...dmis.org>
>
> I've been running the whole machinery that used to trigger very quickly
> the complete hardlock of the machine (*) for the whole evening/night, and
> it's still running flawlessly.
>
> Plus, as I said previously, I agree with the whole idea (given the
> general nastiness of the problem and given the fact this simply has to be
> fixed without pointless delays).
>
> I.e FWIW
>
> Tested-by: Jiri Kosina <jkosina@...e.cz>
> Acked-by: Jiri Kosina <jkosina@...e.cz>
>
> for the whole series.
Thanks! I'll update the commits.
-- Steve
>
> (*) heavy printk() workload (**) + sysrq-l in parallel
> (**) iptables logging every incoming packet + flood ping from another
> machine
>
> Thanks,
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists