[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5639BB76.6060903@linaro.org>
Date: Wed, 4 Nov 2015 17:01:58 +0900
From: AKASHI Takahiro <takahiro.akashi@...aro.org>
To: Jungseok Lee <jungseoklee85@...il.com>
Cc: catalin.marinas@....com, will.deacon@....com, rostedt@...dmis.org,
olof@...om.net, broonie@...nel.org, david.griego@...aro.org,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4 6/6] arm64: ftrace: add arch-specific stack tracer
Jungseok,
On 11/01/2015 05:30 PM, Jungseok Lee wrote:
> On Oct 30, 2015, at 2:25 PM, AKASHI Takahiro wrote:
>
> Hi Akashi,
>
>> Stack tracer on arm64, check_stack(), is uniqeue in the following
>> points:
>> * analyze a function prologue of a traced function to estimate a more
>> accurate stack pointer value, replacing naive '<child's fp> + 0x10.'
>> * use walk_stackframe(), instead of slurping stack contents as orignal
>> check_stack() does, to identify a stack frame and a stack index (height)
>> for every callsite.
>>
>> Regarding a function prologue analyzer, there is no guarantee that we can
>> handle all the possible patterns of function prologue as gcc does not use
>> any fixed templates to generate them. 'Instruction scheduling' is another
>> issue here.
>> Nevertheless, the current version will surely cover almost all the cases
>> in the kernel image and give us useful information on stack pointers.
>
> Can I get an idea on how to test the function prologue analyzer? It pretty
> tough to compare stack trace data with objdump one. Is there an easier way
> to observe this enhancement without objdump?
It is quite difficult to give an evidence of the correctness of my function
prologue analyzer. I only checked the outputs from stack tracer, one by one
(every function), by comparing it against its disassembled code.
Thanks,
-Takahiro AKASHI
> Best Regards
> Jungseok Lee
>
--
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