Messages in this thread Patch in this message | | | Date | Sun, 12 Jul 2009 17:04:12 +0600 | Subject | [PATCH] x86: Fix false positive section mismatch in es7000_32.c | From | Rakib Mullick <> |
| |
Impact: Fix false positive warning
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 followin 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() The variable apic_es7000_cluster references the function __cpuinit wakeup_secondary_cpu_via_mip() If the reference is valid then annotate the variable with __init* or __refdata (see linux/init.h) or name the variable: *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,
--- Signed-off-by: Rakib Mullick <rakib.mullick@gmail.com>
--- linus/arch/x86/kernel/apic/es7000_32.c 2009-07-10 12:30:10.000000000 +0600 +++ rakib/arch/x86/kernel/apic/es7000_32.c 2009-07-12 11:21:10.000000000 +0600 @@ -652,7 +652,8 @@ static int es7000_mps_oem_check_cluster( 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,
| |