[PATCH v10 02/11] arm64: Make perf_callchain_kernel() use arch_stack_walk()

Madhavan T. Venkataraman madvenka at linux.microsoft.com
Thu Oct 21 05:28:46 PDT 2021



On 10/20/21 9:59 AM, Mark Brown wrote:
> On Thu, Oct 14, 2021 at 09:58:38PM -0500, madvenka at linux.microsoft.com wrote:
>> From: "Madhavan T. Venkataraman" <madvenka at linux.microsoft.com>
>>
>> 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 at kernel.org>
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
> 

Thanks.

Madhavan



More information about the linux-arm-kernel mailing list