In the Linux kernel I want to probe the kernel function effective_prio()
. It defined as static
.
When I go to search the symbol of it in the kallsyms
I cannot find it. Does kallsyms
have all the symbol of the kernel functions? If not, which symbols are not included?
There are two possibilities for a function not appearing in /proc/kallsyms
:
static
, and the compiler decides to inline the function (with or without the inline
keyword)If a config option or another #define
removes a function from being compiled, e.g.:
#ifdef CONFIG_OPT
void foo(void) {
}
#endif
As far as I know, if a function does not appear in /proc/kallsyms
, it is not possible to call or probe it from a module.
However, /proc/kallsyms
contains all functions of the kernel, not just the ones exported via EXPORT_SYMBOL
/EXPORT_SYMBOL_GPL
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With