[PATCH 1/1] x86/kernel/cpu/common.c: Fix section mismatch warnings

From: Fenghua Yu
Date: Fri May 20 2011 - 18:46:24 EST


From: Fenghua Yu <fenghua.yu@xxxxxxxxx>

Fix kernel compilation warnings from commit:
de5397ad5b9ad22e2401c4dacdf1bb3b19c05679

WARNING: arch/x86/built-in.o(.cpuinit.text+0x1e07): Section mismatch in reference from the function generic_identify() to the variable .init.data:disable_smep
The function __cpuinit generic_identify() references
a variable __initdata disable_smep.
If disable_smep is only used by generic_identify then
annotate disable_smep with a matching annotation.

WARNING: arch/x86/built-in.o(.cpuinit.text+0x1b10): Section mismatch in reference from the function identify_cpu() to the function .init.text:setup_smep() The function __cpuinit identify_cpu() references a function __init setup_smep().
If setup_smep is only used by identify_cpu then annotate setup_smep with a matching annotation.

Change disable_smep from __initdata to __cpuinitdata.

Change setup_smep() from __init to __cpuinit.

Signed-off-by: Fenghua Yu <fenghua.yu@xxxxxxxxx>

---
arch/x86/kernel/cpu/common.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c
index cbc70a2..c8b4162 100644
--- a/arch/x86/kernel/cpu/common.c
+++ b/arch/x86/kernel/cpu/common.c
@@ -254,7 +254,7 @@ static inline void squash_the_stupid_serial_number(struct cpuinfo_x86 *c)
}
#endif

-static int disable_smep __initdata;
+static int disable_smep __cpuinitdata;
static __init int setup_disable_smep(char *arg)
{
disable_smep = 1;
@@ -262,7 +262,7 @@ static __init int setup_disable_smep(char *arg)
}
__setup("nosmep", setup_disable_smep);

-static __init void setup_smep(struct cpuinfo_x86 *c)
+static __cpuinit void setup_smep(struct cpuinfo_x86 *c)
{
if (cpu_has(c, X86_FEATURE_SMEP)) {
if (unlikely(disable_smep)) {
--
1.7.2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/