Re: rcu warnings cause stack overflow

From: Paul E. McKenney
Date: Thu Feb 02 2012 - 14:12:22 EST


On Thu, Feb 02, 2012 at 03:52:20PM +0100, Frederic Weisbecker wrote:
> On Thu, Feb 02, 2012 at 01:27:42PM +0100, Heiko Carstens wrote:
> > On Wed, Feb 01, 2012 at 04:14:48PM +0100, Frederic Weisbecker wrote:
> > > > Removing the WARN_ON_ONCE will fix this and, if lockdep is turned on, still
> > > > will find illegal uses. But it won't work for lockdep off configs...
> > > > So we probably want something better than the patch below.
> > >
> > > Ah ok. Hmm, but why are you using an exception to implement WARN_ON()
> > > in s390? Is it to have a whole new stack for the warning path in order
> > > to avoid stack overflow from the place that called the WARN_ON() ?
> >
> > The reason was to reduce the code footprint of the WARN_ON() and also
> > be able to print the register contents at the time the warning happened.
>
> Ah ok, makes sense.

So Frederic should push his anti-recursion patch, then?

Thanx, Paul

> > All architectures which define __WARN_TAINT implement warnings with
> > exceptions. Currently that are parisc, powerpc, s390 and sh.
> >
>

--
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/