From: Chen Gang Date: Wed, 23 Oct 2013 02:12:05 +0000 (+0800) Subject: arc: remove '__init' for setup_processor() and arc_init_IRQ() X-Git-Tag: accepted/tizen/common/20141203.182822~1189^2~11 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ef3a661af69046df74beb0ddfa27204aad316385;p=platform%2Fkernel%2Flinux-arm64.git arc: remove '__init' for setup_processor() and arc_init_IRQ() They haven't '__init' in definition, but has '__init' in declaration. And normal function start_kernel_secondary() may call setup_processor() which will call arc_init_IRQ(). So need remove '__init' for both of them. The related warning (with allmodconfig): MODPOST vmlinux.o WARNING: vmlinux.o(.text+0x3084): Section mismatch in reference from the function start_kernel_secondary() to the function .init.text:setup_processor() The function start_kernel_secondary() references the function __init setup_processor(). This is often because start_kernel_secondary lacks a __init annotation or the annotation of setup_processor is wrong. Signed-off-by: Chen Gang --- diff --git a/arch/arc/include/asm/irq.h b/arch/arc/include/asm/irq.h index c0a7210..548207f 100644 --- a/arch/arc/include/asm/irq.h +++ b/arch/arc/include/asm/irq.h @@ -18,7 +18,7 @@ #include -extern void __init arc_init_IRQ(void); +extern void arc_init_IRQ(void); extern int __init get_hw_config_num_irq(void); void arc_local_timer_setup(unsigned int cpu); diff --git a/arch/arc/include/asm/setup.h b/arch/arc/include/asm/setup.h index 229e506..e10f8ce 100644 --- a/arch/arc/include/asm/setup.h +++ b/arch/arc/include/asm/setup.h @@ -31,7 +31,7 @@ struct cpuinfo_data { extern int root_mountflags, end_mem; extern int running_on_hw; -void __init setup_processor(void); +void setup_processor(void); void __init setup_arch_memory(void); #endif /* __ASMARC_SETUP_H */