如何在Linux内核中打印当前的线程堆栈跟踪?
发布时间:2020-05-23 06:41:05 所属栏目:Linux 来源:互联网
导读:我希望能够在 Linux内核中打印线程的堆栈跟踪. 详细信息:我想将代码添加到特定函数(例如swap_writepage()),这些函数将打印调用此函数的线程的完整堆栈跟踪.像这样的东西: int swap_writepage(struct page *page, struct writeback_control *wbc){ /* code g
|
我希望能够在 Linux内核中打印线程的堆栈跟踪. 详细信息:我想将代码添加到特定函数(例如swap_writepage()),这些函数将打印调用此函数的线程的完整堆栈跟踪.像这样的东西: int swap_writepage(struct page *page,struct writeback_control *wbc)
{
/* code goes here to print stack trace */
int ret = 0;
if (try_to_free_swap(page)) {
unlock_page(page);
goto out;
}
if (frontswap_store(page) == 0) {
set_page_writeback(page);
unlock_page(page);
end_page_writeback(page);
goto out;
}
ret = __swap_writepage(page,wbc,end_swap_bio_write);
out:
return ret;
}
我的故事: 解决方法Linux内核有一个众所周知的函数叫做dump_stack() here,它打印堆栈的内容.根据堆栈信息将其放入您的函数中.(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
