diff options
author | Yinghai Lu <yinghai@kernel.org> | 2009-08-26 14:29:26 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-08-26 20:06:52 -0700 |
commit | ce8442b55135c679809311997d1446f3bbc05de2 (patch) | |
tree | e9b2dad0596dab77c910d81dd6a2379673a3dd30 /drivers/acpi/processor_core.c | |
parent | 0d288162f2afc42b37aab656f4622c076babbca3 (diff) |
acpi: don't call acpi_processor_init if acpi is disabled
Jens reported early_ioremap messages with old ASUS board...
> [ 1.507461] pci 0000:00:09.0: Firmware left e100 interrupts enabled; disabling
> [ 1.532778] early_ioremap(3fffd080, 0000005c) [0] => Pid: 1, comm: swapper Not tainted 2.6.31-rc4 #36
> [ 1.561007] Call Trace:
> [ 1.568638] [<c136e48b>] ? printk+0x18/0x1d
> [ 1.581734] [<c15513ff>] __early_ioremap+0x74/0x1e9
> [ 1.596898] [<c15515aa>] early_ioremap+0x1a/0x1c
> [ 1.611270] [<c154a187>] __acpi_map_table+0x18/0x1a
> [ 1.626451] [<c135a7f8>] acpi_os_map_memory+0x1d/0x25
> [ 1.642129] [<c119459c>] acpi_tb_verify_table+0x20/0x49
> [ 1.658321] [<c1193e50>] acpi_get_table_with_size+0x53/0xa1
> [ 1.675553] [<c1193eae>] acpi_get_table+0x10/0x15
> [ 1.690192] [<c155cc19>] acpi_processor_init+0x23/0xab
> [ 1.706126] [<c1001043>] do_one_initcall+0x33/0x180
> [ 1.721279] [<c155cbf6>] ? acpi_processor_init+0x0/0xab
> [ 1.737479] [<c106893a>] ? register_irq_proc+0xaa/0xc0
> [ 1.753411] [<c10689b7>] ? init_irq_proc+0x67/0x80
> [ 1.768316] [<c15405e7>] kernel_init+0x120/0x176
> [ 1.782678] [<c15404c7>] ? kernel_init+0x0/0x176
> [ 1.797062] [<c10038b7>] kernel_thread_helper+0x7/0x10
> [ 1.812984] 00000080 + ffe00000
that is rather later.
acpi_gbl_permanent_mmap should be set in acpi_early_init()
if acpi is not disabled
and we have
> [ 0.000000] ASUS P2B-DS detected: force use of acpi=ht
just don't load acpi_processor_init...
Reported-and-tested-by: Jens Rosenboom <jens@leia.mcbone.net>
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Acked-by: Ingo Molnar <mingo@elte.hu>
Cc: Len Brown <lenb@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/acpi/processor_core.c')
-rw-r--r-- | drivers/acpi/processor_core.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c index 84e0f3c0744..2cc4b303387 100644 --- a/drivers/acpi/processor_core.c +++ b/drivers/acpi/processor_core.c @@ -1151,6 +1151,9 @@ static int __init acpi_processor_init(void) { int result = 0; + if (acpi_disabled) + return 0; + memset(&errata, 0, sizeof(errata)); #ifdef CONFIG_SMP @@ -1197,6 +1200,9 @@ out_proc: static void __exit acpi_processor_exit(void) { + if (acpi_disabled) + return; + acpi_processor_ppc_exit(); acpi_thermal_cpufreq_exit(); |