__init/__exit/__initdata `include/linux/init.h`
Prev | Chapter 6. Common Routines | Next

## __init/__exit/__initdata `include/linux/init.h`

After boot, the kernel frees up a special section; functions marked with __init and data structures marked with __initdata are dropped after boot is complete: similarly modules discard this memory after initialization. __exit is used to declare a function which is only required on exit: the function will be dropped if this file is not compiled as a module. See the header file for use. Note that it makes no sense for a function marked with __init to be exported to modules with `EXPORT_SYMBOL()` - this will break.

Prev | Up | Next
`smp_processor_id`() `include/asm/smp.h` | Home | `__initcall()`/`module_init()` `include/linux/init.h`