内核符号__tracepoint_module_load定义在哪里?

问题描述 投票:1回答:1

内核符号__tracepoint_module_load在哪里定义?我曾经在/proc/kallsyms中看到它,但是现在找不到了。

bootlin.com/linux/也找不到它。

c linux-kernel trace tracepoint
1个回答
1
投票

在哪里定义了内核符号__tracepoint_module_load?

TRACE_EVENT宏,最终使用TRACE_EVENT,您可以在其中看到:

__DECLARE_TRACE

因此我们可以在__DECLARE_TRACE中为extern struct tracepoint __tracepoint_##name; 找到适当的TRACE_EVENT“通话”:

module_load

include/trace/events/module.h中输出TRACE_EVENT(module_load, ... 表示该符号在初始化的数据段中:

/proc/kallsyms

P.S。对于预处理器魔术,elixir.bootlin.com并不是那么有用。要进行真正的调查,只需克隆D或从ffffffff91af5240 D __tracepoint_module_load 下载适当的源。

© www.soinside.com 2019 - 2024. All rights reserved.