What is __init?

Alexandre Courbot gnurou at gmail.com
Mon Feb 7 01:48:45 EST 2011


> When I see a driver code, I found __init. For example, static int __init
> xxxx(struct platform_device *pdev)
> I understand "static" and "int", but what is __init?

__init places the symbol it qualifies into a special section of the
kernel that is discarded from memory once all initialization functions
are called. Since an initialization function is called only once
during system startup, it does not make sense to keep it once the
initialization phase is finished. __init allows to do that.

See also http://www.faqs.org/docs/kernel/x277.html

Alex.



More information about the Kernelnewbies mailing list