Re: EXPORT_SYMBOL Vs extern?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thank you all for your replies.
That clears things up for me.

Regards,
       --Pradeep

On Tue, May 6, 2008 at 5:36 AM, Anirban Sinha <ASinha@xxxxxxxxxxxxxxxxx> wrote:
> 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
>
>



-- 
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


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux