[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20110310230222.GB1837@nowhere>
Date: Fri, 11 Mar 2011 00:02:23 +0100
From: Frederic Weisbecker <fweisbec@...il.com>
To: mingo@...hat.com, hpa@...or.com, linux-kernel@...r.kernel.org,
tglx@...utronix.de, namhyung@...il.com
Cc: linux-tip-commits@...r.kernel.org
Subject: Re: [tip:x86/cleanups] x86, dumpstack: Use frame pointer during
stack trace
On Thu, Mar 10, 2011 at 10:26:07PM +0000, tip-bot for Namhyung Kim wrote:
> Commit-ID: 2f8058ae197236f9d5641850ce27f67d8f3e0b39
> Gitweb: http://git.kernel.org/tip/2f8058ae197236f9d5641850ce27f67d8f3e0b39
> Author: Namhyung Kim <namhyung@...il.com>
> AuthorDate: Tue, 8 Mar 2011 20:44:22 +0900
> Committer: Thomas Gleixner <tglx@...utronix.de>
> CommitDate: Thu, 10 Mar 2011 23:20:30 +0100
>
> x86, dumpstack: Use frame pointer during stack trace
>
> If CONFIG_FRAME_POINTER is set then use the frame pointer for the
> stack backtrace rather than scanning whole stack blindly.
We don't do it blindly, we actually check the reliability with the
frame pointer.
I'm not sure this patch is a good idea. stack dumps need to stay very
robust and not exclusively rely on the frame pointer to be correct.
At least walking blindly the stack provides a best effort dump as a last
resort.
>
> Signed-off-by: Namhyung Kim <namhyung@...il.com>
> Cc: Frederic Weisbecker <fweisbec@...il.com>
> LKML-Reference: <1299584662-24421-4-git-send-email-namhyung@...il.com>
> Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
> ---
> arch/x86/kernel/dumpstack.c | 4 ++++
> 1 files changed, 4 insertions(+), 0 deletions(-)
>
> diff --git a/arch/x86/kernel/dumpstack.c b/arch/x86/kernel/dumpstack.c
> index 38b74a5e..56db27d 100644
> --- a/arch/x86/kernel/dumpstack.c
> +++ b/arch/x86/kernel/dumpstack.c
> @@ -170,7 +170,11 @@ static const struct stacktrace_ops print_trace_ops = {
> .warning_symbol = print_trace_warning_symbol,
> .stack = print_trace_stack,
> .address = print_trace_address,
> +#ifdef CONFIG_FRAME_POINTER
> + .walk_stack = walk_context_stack_bp,
> +#else
> .walk_stack = walk_context_stack,
> +#endif
> };
--
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