RE: EXPORT_SYMBOL Vs extern? | |
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] | |
EXPORT_SYMBOL macro creates a new kernel symbol entry (address of the symbol, symbol) based on the value you specify and puts it in a special section of the kernel image, in __ksymtab section. When modules are loaded dynamically, the loader resolves the symbols during run time by parsing the entries of this section.
Extern can be used for non-static functions that are statically linked during compile time.
HTH,
Ani
>-----Original Message-----
>From: kernelnewbies-bounce@xxxxxxxxxxxx [mailto:kernelnewbies-
>bounce@xxxxxxxxxxxx] On Behalf Of pradeep singh
>Sent: Sunday, May 04, 2008 10:38 PM
>To: Kernel List
>Subject: EXPORT_SYMBOL Vs extern?
>
>Hi All,
>
>A Quick but perhaps dumbass query,
>
>1. int function_A(...)
> {
> ...;
> }
>
>2. int function_B(...)
> {
> ...;
> }
> EXPORT_SYMBOL(function_B);
>
>Okay i understand I should use the EXPORT_SYMBOL way if i want
>function_B to be used by rest of the kernel.
>
>Now I have a doubt -
>
>Is it a compulsion for a function which need to be used in any other
>source file, exported through EXPORT_SYMBOL only?
>Does this means all the places in kernel(and there are loads of them),
>where a function is non-static and is used in other source files
>should actually be using EXPORT_SYMBOL?
>
>Thanks,
> ~Pradeep
>--
>play the game
>
>--
>To unsubscribe from this list: send an email with
>"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
>Please read the FAQ at http://kernelnewbies.org/FAQ
��.n��������+%����w�j)p���{.n����z�ޖw�n'���q���b�������v��m�����Y�����
[Newbies FAQ] [Kernel List] [Site Home] [IETF Annouce] [Git] [Networking] [Security] [Bugtraq] [Rubini] [Photo] [Yosemite] [MIPS Linux] [ARM Linux] [Linux Security] [Linux Networking] [Linux RAID] [Linux SCSI] [Linux ACPI] [DDR & Rambus] [UNIX Filesystems] [Linux Resources]
![]() |
![]() |