ARM: 9406/1: Fix callchain_trace() return value
authorJinjie Ruan <ruanjinjie@huawei.com>
Thu, 27 Jun 2024 07:29:59 +0000 (08:29 +0100)
committerRussell King (Oracle) <rmk+kernel@armlinux.org.uk>
Tue, 2 Jul 2024 08:17:00 +0000 (09:17 +0100)
perf_callchain_store() return 0 on success, -1 otherwise, fix
callchain_trace() to return correct bool value. So walk_stackframe() can
have a chance to stop walking the stack ahead.

Fixes: 70ccc7c0667b ("ARM: 9258/1: stacktrace: Make stack walk callback consistent with generic code")
Signed-off-by: Jinjie Ruan <ruanjinjie@huawei.com>
Signed-off-by: Russell King (Oracle) <rmk+kernel@armlinux.org.uk>
arch/arm/kernel/perf_callchain.c

index 7147edb..1d230ac 100644 (file)
@@ -85,8 +85,7 @@ 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;
 }
 
 void