[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190808222440.2f99c50e@oasis.local.home>
Date: Thu, 8 Aug 2019 22:24:40 -0400
From: Steven Rostedt <rostedt@...dmis.org>
To: Jiping Ma <Jiping.Ma2@...driver.com>
Cc: Will Deacon <will@...nel.org>, <linux-kernel@...r.kernel.org>,
<catalin.marinas@....com>, <will.deacon@....com>,
<mingo@...hat.com>, Joel Fernandes <joel@...lfernandes.org>,
<linux-arm-kernel@...ts.infradead.org>
Subject: Re: [PATCH 1/2 v2] tracing/arm64: Have max stack tracer handle the
case of return address after data
On Fri, 9 Aug 2019 10:17:19 +0800
Jiping Ma <Jiping.Ma2@...driver.com> wrote:
> On 2019年08月09日 01:24, Steven Rostedt wrote:
> > On Thu, 8 Aug 2019 18:11:53 +0100
> > Will Deacon <will@...nel.org> wrote:
> >
> >>> We could make it more descriptive of what it will do and not the reason
> >>> for why it is done...
> >>>
> >>>
> >>> ARCH_FTRACE_SHIFT_STACK_TRACER
> >> Acked-by: Will Deacon <will@...nel.org>
> > Thanks Will!
> >
> > Here's the official patch.
> >
> > From: "Steven Rostedt (VMware)" <rostedt@...dmis.org>
> >
> > Most archs (well at least x86) store the function call return address on the
> > stack before storing the local variables for the function. The max stack
> > tracer depends on this in its algorithm to display the stack size of each
> > function it finds in the back trace.
> >
> > Some archs (arm64), may store the return address (from its link register)
> > just before calling a nested function. There's no reason to save the link
> > register on leaf functions, as it wont be updated. This breaks the algorithm
> > of the max stack tracer.
> >
> > Add a new define ARCH_RET_ADDR_AFTER_LOCAL_VARS that an architecture may set
>
> ARCH_FTRACE_SHIFT_STACK_TRACER is used in the code.
Ah, I did a s/x/y/ to the diff of the patch, but not the change log.
Thanks for pointing that out. I also need to update the comment in 2/2.
-- Steve
>
> Jiping
>
>
Powered by blists - more mailing lists