Re: Some section mismatch in acpi_processor_power_init on ia64 build

From: Ashok Raj
Date: Tue Mar 28 2006 - 19:36:02 EST


On Tue, Mar 28, 2006 at 03:09:36PM -0800, Luck, Tony wrote:
> I've only just noticed these warnings when building ia64 !SMP or
> !HOTPLUG_CPU
> kernels:
>
> WARNING: drivers/acpi/processor.o - Section mismatch: reference to
> .init.data: from .text between 'acpi_processor_power_init' (at offset
> 0x5040) and 'acpi_processor_power_exit'
> WARNING: drivers/acpi/processor.o - Section mismatch: reference to
> .init.data: from .text between 'acpi_processor_power_init' (at offset
> 0x5050) and 'acpi_processor_power_exit'
>
> According to git bisect, they began with Matt Domsch's "ia64: use i386
> dmi_scan.c"
> patch (commit 3ed3bce8), but it appears that the real issue may be
> further back when
> Ashok Raj marked processor_power_dmi_table as __cpuinitdata in 7ded5689
> with a
> cryptic comment by AK (Andi Kleen?):
> /* Actually this shouldn't be __cpuinitdata, would be better to fix
> the
> callers to only run once -AK */
>
> -Tony

Humm.. originally they were marked as __initdata, but for CPU hotplug we call it
when processor gets hot plugged. So i changed it to __cpuinitdata so that when we use
cpu hotplug they stay resident.

the only reference is to that table is from acpi_processor_power_init(), that gets called
currently only from acpi_processor_start().

the code is either compiled in kernel (which means it will be all thrown after free
init mem if !HOTPLUG_CPU) or if this is a module code, then __initdata/cpuinit doesnt
make a difference.

possibly acpi_processor_start(), acpi_processor_power_init() etc should also be
__cpuinit, which would make the warning go away.

Are there any others i missed Andi? maybe this is a general watch out comment, but
he knows better.

--
Cheers,
Ashok Raj
- Open Source Technology Center
-
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/