diff options
author | Paul Gortmaker <paul.gortmaker@windriver.com> | 2013-06-19 14:53:51 -0400 |
---|---|---|
committer | Paul Gortmaker <paul.gortmaker@windriver.com> | 2013-07-14 19:36:59 -0400 |
commit | 0db0628d90125193280eabb501c94feaf48fa9ab (patch) | |
tree | 0e0ef0c4eac101d25a3bd125c4a9200ac4d294c0 /lib/Kconfig.debug | |
parent | 49fb4c6290c70c418a5c25eee996d6b55ea132d6 (diff) | |
download | linux-0db0628d90125193280eabb501c94feaf48fa9ab.tar.gz linux-0db0628d90125193280eabb501c94feaf48fa9ab.tar.bz2 linux-0db0628d90125193280eabb501c94feaf48fa9ab.zip |
kernel: delete __cpuinit usage from all core kernel files
The __cpuinit type of throwaway sections might have made sense
some time ago when RAM was more constrained, but now the savings
do not offset the cost and complications. For example, the fix in
commit 5e427ec2d0 ("x86: Fix bit corruption at CPU resume time")
is a good example of the nasty type of bugs that can be created
with improper use of the various __init prefixes.
After a discussion on LKML[1] it was decided that cpuinit should go
the way of devinit and be phased out. Once all the users are gone,
we can then finally remove the macros themselves from linux/init.h.
This removes all the uses of the __cpuinit macros from C files in
the core kernel directories (kernel, init, lib, mm, and include)
that don't really have a specific maintainer.
[1] https://lkml.org/lkml/2013/5/20/589
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
Diffstat (limited to 'lib/Kconfig.debug')
-rw-r--r-- | lib/Kconfig.debug | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug index 98ac17ed6222..1501aa553221 100644 --- a/lib/Kconfig.debug +++ b/lib/Kconfig.debug @@ -238,7 +238,7 @@ config DEBUG_SECTION_MISMATCH any use of code/data previously in these sections would most likely result in an oops. In the code, functions and variables are annotated with - __init, __cpuinit, etc. (see the full list in include/linux/init.h), + __init,, etc. (see the full list in include/linux/init.h), which results in the code/data being placed in specific sections. The section mismatch analysis is always performed after a full kernel build, and enabling this option causes the following |