如何在一个Linux内核模块中定义一个函数并在另一个中使用它?

时间:2021-08-17 09:05:05

I developed two simple modules to the kernel. Now i want to define a function in one module and after that use it in the other.

我为内核开发了两个简单的模块。现在我想在一个模块中定义一个函数,然后在另一个模块中使用它。

How i can do that?

我怎么能这样做?

Just define the function and caller in the other module without problems?

只需在其他模块中定义函数和调用程序而不会出现问题?

1 个解决方案

#1


25  

Define it in module1.c:

在module1.c中定义它:

#include <linux/module.h>

int fun(void);
EXPORT_SYMBOL(fun);

int fun(void)
{
    /* ... */
}

And use it in module2.c:

并在module2.c中使用它:

extern int fun(void);

#1


25  

Define it in module1.c:

在module1.c中定义它:

#include <linux/module.h>

int fun(void);
EXPORT_SYMBOL(fun);

int fun(void)
{
    /* ... */
}

And use it in module2.c:

并在module2.c中使用它:

extern int fun(void);