diff options
author | Andreas Kling <awesomekling@gmail.com> | 2019-08-07 20:35:41 +0200 |
---|---|---|
committer | Andreas Kling <awesomekling@gmail.com> | 2019-08-07 20:37:05 +0200 |
commit | 308461ca9ab407b0dab25e74565d56b29d179018 (patch) | |
tree | be0b3776be49c26c41746ba2e08dc1e8d02f81e5 | |
parent | b67200dfead19f571e6c2c1bedb3eb57ff72dc87 (diff) | |
download | serenity-308461ca9ab407b0dab25e74565d56b29d179018.zip |
Kernel: Disable kmalloc backtraces during backtrace generation
If kmalloc backtraces are enabled during backtracing, things don't go
super well when the backtrace code calls kmalloc()..
With this fixed, it's basically possible to get all kmalloc backtraces
on the debugger by running (as root):
sysctl kmalloc_stacks=1
-rw-r--r-- | Kernel/KSyms.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/Kernel/KSyms.cpp b/Kernel/KSyms.cpp index ffe508d99a..77498f8daf 100644 --- a/Kernel/KSyms.cpp +++ b/Kernel/KSyms.cpp @@ -139,6 +139,7 @@ void dump_backtrace() return; } TemporaryChange change(in_dump_backtrace, true); + TemporaryChange disable_kmalloc_stacks(g_dump_kmalloc_stacks, false); u32 ebp; asm volatile("movl %%ebp, %%eax" : "=a"(ebp)); |