[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130706080744.GA1342@gmail.com>
Date: Sat, 6 Jul 2013 10:07:44 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Frederic Weisbecker <fweisbec@...il.com>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
"H. Peter Anvin" <hpa@...or.com>, Dave Jones <davej@...hat.com>,
Linux Kernel <linux-kernel@...r.kernel.org>,
Thomas Gleixner <tglx@...utronix.de>
Subject: Re: scheduling while atomic & hang.
* Frederic Weisbecker <fweisbec@...il.com> wrote:
> On Fri, Jul 05, 2013 at 12:27:51PM -0700, Linus Torvalds wrote:
> > On Thu, Jul 4, 2013 at 11:51 PM, Ingo Molnar <mingo@...nel.org> wrote:
> > >
> > > It would be nice to have a full-kernel-stack backtrace printout as an
> > > option, which prints entries 'above' the current RSP.
> >
> > One problem with that is that it is likely to be mostly overwritten by
> > the debug code that is about to print this all out - and any non-debug
> > code may well be really old, just with a sufficiently deep stack trace
> > to show up. Not to mention missing any irq-stack changes etc anyway.
> >
> > So it can easily be *very* misleading - I'm not sure how useful it
> > would be as an idea.
> >
> > Linus
>
> So if the unwider doesn't run with the same stak than the target, it
> migh work. This can work with BUG for example But I believe that WARN
> doesn't do a trap in x86.
Instead of switching stacks it might be better to create an early snapshot
of the stack into a temporary area before calling anything, and to print
that. This is debug code, so overhead is not a big issue.
But yeah, Linus is right, it gets hairy, can be misleading and has limited
utility :-/
Thanks,
Ingo
--
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