[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Exporting kernel symbols
Hi Ravi,
Just try out using EXPORT_SYMBOL_NOVERS(..) instead
of EXPORT_SYMBOL(..).
I am not sure if it will help you. This worked out
for my code. I didn't do any change in the Makefile or
anything except the above line. :) Just check out if
it works.
Hope this helps.
Pooja.
--- Ravi <kravi26@yahoo.com> wrote: > Hello,
>
> While working with the 2.4.10 kernel, I wanted to
> export a function
> that I added. I found that EXPORT_SYMBOL(..) alone
> does not help if
> CONFIG_MODVERSIONS is set. I also didn't find any
> document that
> explains how to make a kernel symbol available to
> modules. Below is the
> list of steps that I followed - after some trial
> and error. Can
> someone please verify this?
>
>
>
> HOWTO export a kernel symbol to modules
> ---------------------------------------
> Steps to make a symbol 'my_function' (defined in
> my_obj.c) available to
> kernel modules:
>
> 1. Include the following two files in the source
> file (my_obj.c) :
>
> linux/module.h and linux/modsetver.h
>
> 2. Add the following line to the source file:
>
> EXPORT_SYMBOL(my_function);
>
>
> 3. Add the object filename to the 'export-objs'
> variable in the current
> directory's Makefile. If the variable does not
> exist, add it:
>
> export_objs := my_obj.o
>
> 3a. If the changes you are making are
> enabled/disabled by a config
> option, you can conditionally modify export-objs :
>
> #ifdef CONFIG_MY_OPTION
> export-objs += my_obj.o
> #endif
>
>
> IMPORTANT:
> Make sure that your file name does not clash with
> any of the existing
> files in include/linux/modules. For example, if a
> file 'my_obj.ver'
> already exists in include/linux/modules, you have to
> rename your file
> (or move only the EXPORT_SYMBOL and related parts to
> a different file).
>
> ---------------------------
>
>
> -Thanks,
> Ravi.
>
> __________________________________________________
> Do You Yahoo!?
> Send FREE Valentine eCards with Yahoo! Greetings!
> http://greetings.yahoo.com
> --
> Kernelnewbies: Help each other learn about the Linux
> kernel.
> Archive:
> http://mail.nl.linux.org/kernelnewbies/
> IRC Channel: irc.openprojects.net / #kernelnewbies
> Web Page: http://www.kernelnewbies.org/
>
________________________________________________________________________
Looking for a job? Visit Yahoo! India Careers
Visit http://in.careers.yahoo.com
--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive: http://mail.nl.linux.org/kernelnewbies/
IRC Channel: irc.openprojects.net / #kernelnewbies
Web Page: http://www.kernelnewbies.org/