MCPcopy Create free account
hub / github.com/LemonOSProject/LemonOS / PrintStackTrace

Function PrintStackTrace

Kernel/include/arch/x86_64/strace.h:7–15  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5#include <scheduler.h>
6
7inline static void PrintStackTrace(uint64_t _rbp){
8 uint64_t* rbp = (uint64_t*)_rbp;
9 uint64_t rip = 0;
10 while(rbp && Memory::CheckKernelPointer((uintptr_t)rbp, 16)){
11 rip = *(rbp + 1);
12 Log::Info(rip);
13 rbp = (uint64_t*)(*rbp);
14 }
15}
16
17inline static void UserPrintStackTrace(uint64_t _rbp, address_space_t* addressSpace){
18 uint64_t* rbp = (uint64_t*)_rbp;

Callers 3

KernelAssertionFailedFunction · 0.85
isr_handlerFunction · 0.85
PageFaultHandlerFunction · 0.85

Calls 2

CheckKernelPointerFunction · 0.85
InfoFunction · 0.85

Tested by

no test coverage detected