Skip to contentSkip to conversation

x86/kernel/cpu/common.c: Fix section mismatch warnings

PATCH In review Fenghua Yu 1 participant 2 messages May 20, 2011 – May 21, 2011 x86

lore
Share & tools
lore

Fenghua Yu

author
#0 lore raw

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

From: Fenghua Yu <[email protected]>

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.

---
 arch/x86/kernel/cpu/common.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
arch/x86/kernel/cpu/common.c +2 -2
index cbc70a2..c8b4162 100644
@@ -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)) {
Signature · 1 line
1.7.2
#1 lore raw

[tip:x86/urgent] x86, SMEP: Fix section mismatch warnings

Commit-ID:  1d487624fcc17a40aa67acaa9e8f3815fb7cd0f0
Gitweb:     http://git.kernel.org/tip/1d487624fcc17a40aa67acaa9e8f3815fb7cd0f0
Author:     Fenghua Yu <[email protected]>
AuthorDate: Fri, 20 May 2011 15:33:17 -0700
Committer:  Ingo Molnar <[email protected]>
CommitDate: Sat, 21 May 2011 12:46:24 +0200

x86, SMEP: Fix section mismatch warnings

Fix these kernel compilation warnings:

WARNING: arch/x86/built-in.o(.cpuinit.text+0x1e07): Section mismatch ...
WARNING: arch/x86/built-in.o(.cpuinit.text+0x1b10): Section mismatch ...

introduced by:

de5397ad5b9a: x86, cpu: Enable/disable Supervisor Mode Execution Protection

Change disable_smep from __initdata to __cpuinitdata. Change setup_smep() from __init to __cpuinit.

---
 arch/x86/kernel/cpu/common.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
arch/x86/kernel/cpu/common.c +2 -2
index cbc70a2..c8b4162 100644
@@ -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)) {