打印Linux内核函数调用栈 dump_stack
- 加入头文件 #include <asm/ptrace.h>
- 在想调用的函数调用 dump_stack();
查看查看回调函数
-
打印回调函数 printk("nr_to_call %d %p\n",nr_to_call,nb->notifier_call);
-
根据打印地址 在内核中查找 aarch64-linux-gnu-objdump -d vmlinux | grep ffffff80083b3640
本文介绍了如何在Linux内核中利用dump_stack函数打印调用栈,通过包含<asm/ptrace.h>头文件并在目标函数调用dump_stack()来查看回调函数。在回调函数中,使用printk打印调用地址,然后通过aarch64-linux-gnu-objdump工具定位内核中的具体函数。这种方法对于理解和调试内核级问题非常有用。
打印回调函数 printk("nr_to_call %d %p\n",nr_to_call,nb->notifier_call);
根据打印地址 在内核中查找 aarch64-linux-gnu-objdump -d vmlinux | grep ffffff80083b3640
7047
1148
10万+

被折叠的 条评论
为什么被折叠?