lkml.org 
[lkml]   [2009]   [Aug]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] 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>

---
drivers/acpi/processor_core.c | 6 ++++++
1 file changed, 6 insertions(+)

Index: linux-2.6/drivers/acpi/processor_core.c
===================================================================
--- linux-2.6.orig/drivers/acpi/processor_core.c
+++ linux-2.6/drivers/acpi/processor_core.c
@@ -1137,6 +1137,9 @@ static int __init acpi_processor_init(vo
{
int result = 0;

+ if (acpi_disabled)
+ return 0;
+
memset(&errata, 0, sizeof(errata));

#ifdef CONFIG_SMP
@@ -1185,6 +1188,9 @@ out_proc:

static void __exit acpi_processor_exit(void)
{
+ if (acpi_disabled)
+ return;
+
acpi_processor_ppc_exit();

acpi_thermal_cpufreq_exit();

\
 
 \ /
  Last update: 2009-08-05 10:03    [W:0.129 / U:0.300 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site