我想看看做这样的事情时调用的是什么内核函数:
int main(void)
{
int arr[5] = {0};
arr[3000] = 8; // I want to see what kernel function sends the SIGBUS
}
有没有办法使用gdb或其他工具?
答案 0 :(得分:1)
我不确定这一系列的调用是否特定于arch,但是对于arm:
do_page_fault -> __do_user_fault -> force_sig_info.
你无法通过gdb检查它是一个内核。如果要进一步调查,请使用dump_stack()/ printk / ftrace内核API。 顺便说一下, - 这个代码不会显示异常信号......