On Mon, Jun 24, 2013 at 09:30:21PM +0200, Paul Gortmaker wrote: > 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. > > Note that some harmless section mismatch warnings may result, since > notify_cpu_starting() and cpu_up() are arch independent (kernel/cpu.c) > are flagged as __cpuinit -- so if we remove the __cpuinit from > arch specific callers, we will also get section mismatch warnings. > As an intermediate step, we intend to turn the linux/init.h cpuinit > content into no-ops as early as possible, since that will get rid > of these warnings. In any case, they are temporary and harmless. > > This removes all the arch/cris uses of the __cpuinit macros from > all C files. Currently cris does not have any __CPUINIT used in > assembly files. > > [1] https://lkml.org/lkml/2013/5/20/589 > > Cc: Mikael Starvik <star...@axis.com>
Acked-by: Jesper Nilsson <jesper.nils...@axis.com> > Cc: linux-cris-ker...@axis.com > Signed-off-by: Paul Gortmaker <paul.gortma...@windriver.com> > --- > > [This commit is part of the __cpuinit removal work. If you don't see > any problems with it, then you don't have to do anything ; it will be > submitted with all the rest of the __cpuinit removal work. On the > other hand, if you want to carry this patch in with your other pending > changes so as to handle conflicts with other pending work yourself, then > that is fine too, as the commits can largely be treated independently. > For more information, please see: https://lkml.org/lkml/2013/6/20/513 ] > > arch/cris/arch-v32/kernel/smp.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/cris/arch-v32/kernel/smp.c b/arch/cris/arch-v32/kernel/smp.c > index cdd1202..fe8e603 100644 > --- a/arch/cris/arch-v32/kernel/smp.c > +++ b/arch/cris/arch-v32/kernel/smp.c > @@ -197,7 +197,7 @@ int setup_profiling_timer(unsigned int multiplier) > */ > unsigned long cache_decay_ticks = 1; > > -int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *tidle) > +int __cpu_up(unsigned int cpu, struct task_struct *tidle) > { > smp_boot_one_cpu(cpu, tidle); > return cpu_online(cpu) ? 0 : -ENOSYS; > -- > 1.8.1.2 /^JN - Jesper Nilsson -- Jesper Nilsson -- jesper.nils...@axis.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/