From 64639de4d25905febf9ee48b5211696ac691bbe4 Mon Sep 17 00:00:00 2001 From: Gunnar Beutner Date: Sun, 25 Apr 2021 13:39:11 +0200 Subject: [PATCH] Kernel: Stop walking the stack when we encounter return address 0 --- Kernel/PerformanceEventBuffer.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Kernel/PerformanceEventBuffer.cpp b/Kernel/PerformanceEventBuffer.cpp index 1aafac5b40..8f8023e510 100644 --- a/Kernel/PerformanceEventBuffer.cpp +++ b/Kernel/PerformanceEventBuffer.cpp @@ -45,6 +45,8 @@ static Vector raw_backtrace(Fl FlatPtr retaddr; if (!safe_memcpy(&retaddr, (void*)(stack_ptr + sizeof(FlatPtr)), sizeof(FlatPtr), fault_at)) break; + if (retaddr == 0) + break; backtrace.append(retaddr); if (backtrace.size() == PerformanceEvent::max_stack_frame_count) break;