* EXPORT_SYMBOL question
@ 2005-03-28 11:10 Josef E. Galea
2005-03-28 11:19 ` Sam Ravnborg
0 siblings, 1 reply; 3+ messages in thread
From: Josef E. Galea @ 2005-03-28 11:10 UTC (permalink / raw)
To: linux-kernel
Hi,
I have 2 modules. The first one uses EXPORT_SYMBOL to make some function
available to other modules. These prototypes for these functions were
also put in a header file. Now the second module uses the functions the
functions defined in the first module by and includes the afore
mentioned header file. However when i'm compiling the module, I get a
symbol underfined warning. When I load the module it works as expected.
Is there any way to get rid of these warnings.
Another problem I'm having is that when I load the second module I get
`no version for "rbnode_initialize" found: kernel tainted.'
(rbnode_initialize is one of the functions exported by the first
module). Both MODULE_LICENSE("GPL"); and MODULE_VERSION are declared in
the two modules. Is there anything I'm missing?
Thanks
Josef Galea
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: EXPORT_SYMBOL question
2005-03-28 11:10 EXPORT_SYMBOL question Josef E. Galea
@ 2005-03-28 11:19 ` Sam Ravnborg
2005-03-28 11:46 ` Josef E. Galea
0 siblings, 1 reply; 3+ messages in thread
From: Sam Ravnborg @ 2005-03-28 11:19 UTC (permalink / raw)
To: Josef E. Galea; +Cc: linux-kernel
On Mon, Mar 28, 2005 at 01:10:35PM +0200, Josef E. Galea wrote:
> Hi,
>
> I have 2 modules. The first one uses EXPORT_SYMBOL to make some function
> available to other modules. These prototypes for these functions were
> also put in a header file. Now the second module uses the functions the
> functions defined in the first module by and includes the afore
> mentioned header file. However when i'm compiling the module, I get a
> symbol underfined warning. When I load the module it works as expected.
> Is there any way to get rid of these warnings.
>
> Another problem I'm having is that when I load the second module I get
> `no version for "rbnode_initialize" found: kernel tainted.'
> (rbnode_initialize is one of the functions exported by the first
> module). Both MODULE_LICENSE("GPL"); and MODULE_VERSION are declared in
> the two modules. Is there anything I'm missing?
You need to compile both modules at the same time.
Do something like this for your two modules foo and bar:
modules/Makefile
obj-y := foo/ bar/
modules/foo/ <= Your foo module
modules/bar/ <= Your bar module
Then when building the modules stay in modules/ and
execute:
make -C <path-to-kernel-src> M=`pwd`
And to install modules:
make -C <path-to-kernel-src> M=`pwd` modules_install
Sam
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: EXPORT_SYMBOL question
2005-03-28 11:19 ` Sam Ravnborg
@ 2005-03-28 11:46 ` Josef E. Galea
0 siblings, 0 replies; 3+ messages in thread
From: Josef E. Galea @ 2005-03-28 11:46 UTC (permalink / raw)
To: Sam Ravnborg; +Cc: linux-kernel
Sam Ravnborg wrote:
>On Mon, Mar 28, 2005 at 01:10:35PM +0200, Josef E. Galea wrote:
>
>
>>Hi,
>>
>>I have 2 modules. The first one uses EXPORT_SYMBOL to make some function
>>available to other modules. These prototypes for these functions were
>>also put in a header file. Now the second module uses the functions the
>>functions defined in the first module by and includes the afore
>>mentioned header file. However when i'm compiling the module, I get a
>>symbol underfined warning. When I load the module it works as expected.
>>Is there any way to get rid of these warnings.
>>
>>Another problem I'm having is that when I load the second module I get
>>`no version for "rbnode_initialize" found: kernel tainted.'
>>(rbnode_initialize is one of the functions exported by the first
>>module). Both MODULE_LICENSE("GPL"); and MODULE_VERSION are declared in
>>the two modules. Is there anything I'm missing?
>>
>>
>
>You need to compile both modules at the same time.
>Do something like this for your two modules foo and bar:
>
>modules/Makefile
>obj-y := foo/ bar/
>modules/foo/ <= Your foo module
>modules/bar/ <= Your bar module
>
>Then when building the modules stay in modules/ and
>execute:
>make -C <path-to-kernel-src> M=`pwd`
>
>And to install modules:
>make -C <path-to-kernel-src> M=`pwd` modules_install
>
> Sam
>
>
>
Thanks for your help. That solved both the warnings and the kernel
tainted message.
Josef
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2005-03-28 11:46 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-28 11:10 EXPORT_SYMBOL question Josef E. Galea
2005-03-28 11:19 ` Sam Ravnborg
2005-03-28 11:46 ` Josef E. Galea
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox