Re: [PATCH v3] watchdog: touch_nmi_watchdog should only touch localcpu not every one

From: Ingo Molnar
Date: Wed Nov 10 2010 - 14:14:58 EST



* Don Zickus <dzickus@xxxxxxxxxx> wrote:

> On Wed, Nov 10, 2010 at 07:07:11PM +0100, Ingo Molnar wrote:
> >
> > * Don Zickus <dzickus@xxxxxxxxxx> wrote:
> >
> > > > Hm, the flip side is that if a CPU is stuck spewing backtraces, we will now make
> > > > all the other CPUs a lot more noisy - which might only 'lock up' because this
> > > > CPU is stuck spewing oopses, right?
> > >
> > > When you say the other CPUs will be a lot more noisy, is that because they are
> > > busy processing backtraces for the first cpu to spew? I guess I don't understand
> > > how the other CPUs could have their interrupts off the whole time while the first
> > > cpu is spewing a backtrace (just trying to educate myself).
> >
> > Say the kernel crashes on a CPU and keeps spewing new oopses, while write-holding
> > tasklist_lock.
> >
> > Any other CPU that delivers a signal from IRQ context, trying to take the
> > tasklist_lock, will loop indefinitely until that crashing CPU releases the lock.
> >
> > In that case the 'secondary' NMI warnings from all other CPUs (eventually every CPU
> > gets stuck in such a scenario) will start spewing NMI lockup messages.
> >
> > Dunno. Maybe we should do your change - but also have an option to 'shut up' the
> > kernel after the first hard oops [not warning]. That would silence the secondary NMI
> > watchdog messages as well.
>
> You mean inside the panic() routine? like a ratelimit?

A ratelimit, but some really serious one - like only one crash displayed per 10
minutes, or so - to give the user time to make a picture of the first crash, if it's
still visible on the screen or so.

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/