summaryrefslogtreecommitdiff
path: root/kernel/lib/backtrace.c
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2025-04-17 13:44:55 -0400
committerFreya Murphy <freya@freyacat.org>2025-04-17 14:10:42 -0400
commitf8529d09bf1555c2dda61f5841b7ad4f42ce9715 (patch)
tree16e0cdede45741e945e663f72697665074b2b077 /kernel/lib/backtrace.c
parentfmt (diff)
downloadcomus-f8529d09bf1555c2dda61f5841b7ad4f42ce9715.tar.gz
comus-f8529d09bf1555c2dda61f5841b7ad4f42ce9715.tar.bz2
comus-f8529d09bf1555c2dda61f5841b7ad4f42ce9715.zip
elf sym loading
Diffstat (limited to 'kernel/lib/backtrace.c')
-rw-r--r--kernel/lib/backtrace.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/lib/backtrace.c b/kernel/lib/backtrace.c
index fb708b2..485cc0f 100644
--- a/kernel/lib/backtrace.c
+++ b/kernel/lib/backtrace.c
@@ -1,4 +1,5 @@
#include <lib.h>
+#include <comus/mboot.h>
struct stackframe {
struct stackframe *rbp;
@@ -38,9 +39,10 @@ void log_backtrace_ex(void *ip, void *bp)
{
struct stackframe *frame = bp;
kputs("Stack trace:\n");
- kprintf(" %p\n", ip);
+ kprintf(" %p\t%s\n", ip, mboot_get_elf_sym((uint64_t)ip));
while (frame) {
- kprintf(" %p\n", frame->rip);
+ kprintf(" %p\t%s\n", frame->rip,
+ mboot_get_elf_sym((uint64_t)frame->rip));
frame = frame->rbp;
}
}