Most of architectures not use '__init' for setup_profiling_timer(), so need remove it, or can generate warning (e.g. arc with allmodconfig): MODPOST vmlinux.o WARNING: vmlinux.o(.text+0x3c682): Section mismatch in reference from the function write_profile() to the function .init.text:setup_profiling_timer() The function write_profile() references the function __init setup_profiling_timer(). This is often because write_profile lacks a __init annotation or the annotation of setup_profiling_timer is wrong. Signed-off-by: Chen Gang <gang.chen@xxxxxxxxxxx> --- arch/arc/kernel/smp.c | 2 +- arch/blackfin/mach-bf561/smp.c | 2 +- arch/parisc/kernel/smp.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/arch/arc/kernel/smp.c b/arch/arc/kernel/smp.c index bca3052..3bdac11 100644 --- a/arch/arc/kernel/smp.c +++ b/arch/arc/kernel/smp.c @@ -187,7 +187,7 @@ int __cpu_up(unsigned int cpu, struct task_struct *idle) /* * not supported here */ -int __init setup_profiling_timer(unsigned int multiplier) +int setup_profiling_timer(unsigned int multiplier) { return -EINVAL; } diff --git a/arch/blackfin/mach-bf561/smp.c b/arch/blackfin/mach-bf561/smp.c index 11789be..3bef058 100644 --- a/arch/blackfin/mach-bf561/smp.c +++ b/arch/blackfin/mach-bf561/smp.c @@ -43,7 +43,7 @@ void __init platform_prepare_cpus(unsigned int max_cpus) init_cpu_present(&mask); } -int __init setup_profiling_timer(unsigned int multiplier) /* not supported */ +int setup_profiling_timer(unsigned int multiplier) /* not supported */ { return -EINVAL; } diff --git a/arch/parisc/kernel/smp.c b/arch/parisc/kernel/smp.c index 8a252f2..2e8cd36 100644 --- a/arch/parisc/kernel/smp.c +++ b/arch/parisc/kernel/smp.c @@ -433,7 +433,7 @@ int __cpu_up(unsigned int cpu, struct task_struct *tidle) } #ifdef CONFIG_PROC_FS -int __init +int setup_profiling_timer(unsigned int multiplier) { return -EINVAL; -- 1.7.7.6 -- To unsubscribe from this list: send the line "unsubscribe linux-parisc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html