[tip:x86/urgent] x86: Fix false positive section mismatch in es7000_32.c

From: tip-bot for Rakib Mullick
Date: Mon Jul 13 2009 - 12:58:21 EST


Commit-ID: 151586d0f70405d99324d89aea13706cf6d7f993
Gitweb: http://git.kernel.org/tip/151586d0f70405d99324d89aea13706cf6d7f993
Author: Rakib Mullick <rakib.mullick@xxxxxxxxx>
AuthorDate: Sun, 12 Jul 2009 17:04:12 +0600
Committer: Ingo Molnar <mingo@xxxxxxx>
CommitDate: Mon, 13 Jul 2009 11:03:26 +0200

x86: Fix false positive section mismatch in es7000_32.c

The variable apic_es7000_cluster references the function __cpuinit
wakeup_secondary_cpu_via_mip() from a noninit section. So we've been
warned by the following warning. To avoid possible collision between
init/noninit, its best to mark the variable as __refdata.

We were warned by the following warning:

LD arch/x86/kernel/apic/built-in.o
WARNING: arch/x86/kernel/apic/built-in.o(.data+0x198c): Section
mismatch in reference from the variable apic_es7000_cluster to the
function .cpuinit.text:wakeup_secondary_cpu_via_mip()

Signed-off-by: Rakib Mullick <rakib.mullick@xxxxxxxxx>
LKML-Reference: <b9df5fa10907120404k6279a10ch5e9682432272706f@xxxxxxxxxxxxxx>
Signed-off-by: Ingo Molnar <mingo@xxxxxxx>


---
arch/x86/kernel/apic/es7000_32.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/arch/x86/kernel/apic/es7000_32.c b/arch/x86/kernel/apic/es7000_32.c
index 69328ac..8952a58 100644
--- a/arch/x86/kernel/apic/es7000_32.c
+++ b/arch/x86/kernel/apic/es7000_32.c
@@ -652,7 +652,8 @@ static int es7000_mps_oem_check_cluster(struct mpc_table *mpc, char *oem,
return ret && es7000_apic_is_cluster();
}

-struct apic apic_es7000_cluster = {
+/* We've been warned by a false positive warning.Use __refdata to keep calm. */
+struct apic __refdata apic_es7000_cluster = {

.name = "es7000",
.probe = probe_es7000,
--
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/