我试图了解module_init和module_exit宏的工作原理,所以我打开了linux / module.h头文件
/* Each module must use one module_init(). */
#define module_init(initfn) \
static inline initcall_t __maybe_unused __inittest(void) \
{ return initfn; } \
int init_module(void) __attribute__((alias(#initfn)));
我可以理解该宏的最后一行,其中我们为initfn分配了另一个名称,但是我无法理解为什么我们要定义inittest内联函数,谁将调用此函数。你们能解释一下吗?
感谢您的耐心和时间