> > > > > hmm slightly confused > > > > > > you can call non-init stuff from init functions, but not the other > > way > > > around... > > > > Okay I got your point, I guess it's all because of the following > > function, > > Called from sfi_processor_register_performance that is causing this > > mess. > > > > /* parse the freq table from sfi */ > > sfi_cpufreq_num = 0; > > sfi_table_parse(SFI_SIG_FREQ, NULL, NULL, parse_freq); > > > > will see how this function call can be avoided from > > sfi_processor_register_performance > > Arjan, found the issue parse_freq() is annotated with __init which is > not required, > Once I removed this annotation all warnings go away. I will test this > fix tomorrow > And resubmit this patch. > > Thanks a lot for your comments.
Arjan, resubmitting the patch, just one change of removing Unwanted __init annotation in parse_freq fixed the compiler warnings. >From 05d441575fe375748913ae13a3e8e77bd78cb9be Mon Sep 17 00:00:00 2001 From: Illyas Mansoor <[email protected]> Date: Wed, 24 Nov 2010 22:12:15 +0530 Subject: [PATCH] fix for section mismatch warnings parse_freq() was annotated with __init this is not required, fixed this. fixed the following compiler warning: WARNING: vmlinux.o(.text+0x12d4e): Section mismatch in reference from the function sfi_processor_register_performance() to the function .init.text:parse_freq() The function sfi_processor_register_performance() references the function __init parse_freq(). This is often because sfi_processor_register_performance lacks a __init annotation or the annotation of parse_freq is wrong. Signed-off-by: Illyas Mansoor <[email protected]> --- arch/x86/kernel/cpu/cpufreq/sfi-cpufreq.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/arch/x86/kernel/cpu/cpufreq/sfi-cpufreq.c b/arch/x86/kernel/cpu/cpufreq/sfi-cpufreq.c index 11d1438..ed1d912 100644 --- a/arch/x86/kernel/cpu/cpufreq/sfi-cpufreq.c +++ b/arch/x86/kernel/cpu/cpufreq/sfi-cpufreq.c @@ -100,7 +100,7 @@ static struct cpufreq_driver sfi_cpufreq_driver; static unsigned int sfi_pstate_strict; -static int __init parse_freq(struct sfi_table_header *table) +static int parse_freq(struct sfi_table_header *table) { struct sfi_table_simple *sb; struct sfi_freq_table_entry *pentry; -- 1.7.2.3
0001-fix-for-section-mismatch-warnings.patch
Description: 0001-fix-for-section-mismatch-warnings.patch
_______________________________________________ MeeGo-kernel mailing list [email protected] http://lists.meego.com/listinfo/meego-kernel
