在 Linux 内核版本3.5中,在文件kernel/printk.c中有一个函数调用
trace_console(text, 0, len, len);
@第 1219 行
我找不到这个函数的定义。我为它获取了完整的内核,并使用 cscope 和 ctags 进行了尝试,但我仍然无法找到它的定义。有什么我想念的概念吗?
在 Linux 内核版本3.5中,在文件kernel/printk.c中有一个函数调用
trace_console(text, 0, len, len);
@第 1219 行
我找不到这个函数的定义。我为它获取了完整的内核,并使用 cscope 和 ctags 进行了尝试,但我仍然无法找到它的定义。有什么我想念的概念吗?
这是因为它隐藏在 include/linux/tracepoints.h 中的一个宏(或者更确切地说,两个宏,一个用于启用跟踪,一个用于关闭时)中:
__DECLARE_TRACE定义禁用跟踪时。
使用 .config 中的 CONFIG_TRACEPOINTS 启用/禁用跟踪
实际的 trace_console 在 include/trace/events/printk.h 中生成: TRACE_EVENT_CONDITION