【发布时间】:2015-05-25 02:20:23
【问题描述】:
首先,如何在 FreeBSD 中获取已加载内核模块的堆栈起始地址和结束地址?
第二,如何将uprintf或printf或iprintf的输出全部取出来?通常当内核崩溃时,一些打印输出的结果会丢失。有什么方法可以“刷新”它们?
【问题讨论】:
标签: stack kernel printf freebsd kernel-module
首先,如何在 FreeBSD 中获取已加载内核模块的堆栈起始地址和结束地址?
第二,如何将uprintf或printf或iprintf的输出全部取出来?通常当内核崩溃时,一些打印输出的结果会丢失。有什么方法可以“刷新”它们?
【问题讨论】:
标签: stack kernel printf freebsd kernel-module
您可以使用stack(9) 获取内核线程的堆栈跟踪。但是模块本身没有堆栈。
为尽可能确保捕获输出,请使用printf(9) 或log(9)。这些将记录到系统日志。
【讨论】: