Re: [PATCH v10 02/11] arm64: Make perf_callchain_kernel() use arch_stack_walk()
From: Mark Brown <broonie@kernel.org>
Date: 2021-10-20 14:59:42
Also in:
live-patching, lkml
From: Mark Brown <broonie@kernel.org>
Date: 2021-10-20 14:59:42
Also in:
live-patching, lkml
On Thu, Oct 14, 2021 at 09:58:38PM -0500, madvenka@linux.microsoft.com wrote:
From: "Madhavan T. Venkataraman" <redacted> Currently, perf_callchain_kernel() in ARM64 code walks the stack using start_backtrace() and walk_stackframe(). Make it use arch_stack_walk() instead. This makes maintenance easier.
static bool callchain_trace(void *data, unsigned long pc)
{
struct perf_callchain_entry_ctx *entry = data;
- perf_callchain_store(entry, pc);
- return true;
+ return perf_callchain_store(entry, pc) == 0;
}This changes us from unconditionally doing the whole walk to returning an error if perf_callchain_store() returns an error so it's not quite a straight transform, though since that seems like a useful improvement which most likely on't have any practical impact that's fine. Reviewed-by: Mark Brown <broonie@kernel.org>