George Robinson
George Robinson

Reputation: 2125

Where is the kernel symbol __tracepoint_module_load defined?

Where is the kernel symbol __tracepoint_module_load defined?
I saw it once in /proc/kallsyms, but now I can't find it.

bootlin.com/linux/ cannot find it, either.

Upvotes: 1

Views: 279

Answers (1)

red0ct
red0ct

Reputation: 5055

Where is the kernel symbol __tracepoint_module_load defined ?

There is TRACE_EVENT macro, which eventually uses __DECLARE_TRACE, where you can see:

extern struct tracepoint __tracepoint_##name;

So we can find the appropriate TRACE_EVENT "call" for module_load in include/trace/events/module.h:

TRACE_EVENT(module_load,
...

In /proc/kallsyms output D means that the symbol is in the initialized data section:

ffffffff91af5240 D __tracepoint_module_load

P.S. In case of preprocessor magic elixir.bootlin.com is not so useful. To make a real investigation just clone Linux kernel or download the appropriate sources from pub.

Upvotes: 3

Related Questions