From patchwork Thu Jul 23 14:39:12 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yinghai Lu X-Patchwork-Id: 36979 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n6NEdWvM001084 for ; Thu, 23 Jul 2009 14:39:32 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752432AbZGWOjP (ORCPT ); Thu, 23 Jul 2009 10:39:15 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1752778AbZGWOjP (ORCPT ); Thu, 23 Jul 2009 10:39:15 -0400 Received: from qw-out-2122.google.com ([74.125.92.26]:50229 "EHLO qw-out-2122.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752432AbZGWOjN (ORCPT ); Thu, 23 Jul 2009 10:39:13 -0400 Received: by qw-out-2122.google.com with SMTP id 8so531878qwh.37 for ; Thu, 23 Jul 2009 07:39:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:cc:content-type; bh=ywE4CZgGekbTfCYd2DSABKsm2hi0e1FHKVY2851Fuzw=; b=fDIigNPzVXI5rfbda49gwbxvgi3M/ahDk9SIJ4q4Jo8af2DcfXnwbL+a5UiVDAXiTP /0rlcotDsaA4x1md/Awv10aKumBZvVsCcUbOKqdfWBd6s4INOpGIjtGEKOrGIAmBJjUv zMLxfBT4JK9K+32S8/5p2UzCFkKh7/fLwAxok= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=oDP8z95sh9j/AU5Y47Oj5JrCE/AbgNOQvNHDIH02OQMWBWmRXkAIEYbaYUYaJq9ciU u9BF7ZOxF3x0I2mUVib49SRbSgHgMEqXPuOBjBrMXATg1Ut2k89maZG8023P+uE6an7W UNfZuhfd1DoVpDxszDGlpv36fllt6D3FFPXWQ= MIME-Version: 1.0 Received: by 10.151.83.14 with SMTP id k14mr4346492ybl.181.1248359952852; Thu, 23 Jul 2009 07:39:12 -0700 (PDT) In-Reply-To: <1248351634.7237.32.camel@fnki-nb00130> References: <1248351634.7237.32.camel@fnki-nb00130> Date: Thu, 23 Jul 2009 07:39:12 -0700 Message-ID: <86802c440907230739ufe30b4cocc4b16faacc009c4@mail.gmail.com> Subject: Re: early_ioremap messages with old ASUS board From: Yinghai Lu To: Jens Rosenboom , Yinghai Lu , Ingo Molnar , "H. Peter Anvin" , Thomas Gleixner , Len Brown Cc: linux-kernel , ACPI Devel Maling List Sender: linux-acpi-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-acpi@vger.kernel.org please try attached ... YH [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] [] ? printk+0x18/0x1d > [ 1.581734] [] __early_ioremap+0x74/0x1e9 > [ 1.596898] [] early_ioremap+0x1a/0x1c > [ 1.611270] [] __acpi_map_table+0x18/0x1a > [ 1.626451] [] acpi_os_map_memory+0x1d/0x25 > [ 1.642129] [] acpi_tb_verify_table+0x20/0x49 > [ 1.658321] [] acpi_get_table_with_size+0x53/0xa1 > [ 1.675553] [] acpi_get_table+0x10/0x15 > [ 1.690192] [] acpi_processor_init+0x23/0xab > [ 1.706126] [] do_one_initcall+0x33/0x180 > [ 1.721279] [] ? acpi_processor_init+0x0/0xab > [ 1.737479] [] ? register_irq_proc+0xaa/0xc0 > [ 1.753411] [] ? init_irq_proc+0x67/0x80 > [ 1.768316] [] kernel_init+0x120/0x176 > [ 1.782678] [] ? kernel_init+0x0/0x176 > [ 1.797062] [] 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-by: Jens Rosenboom Signed-off-by: Yinghai Lu diff --git a/drivers/acpi/processor_core.c b/drivers/acpi/processor_core.c index 3bcef82..0259f27 100644 --- a/drivers/acpi/processor_core.c +++ b/drivers/acpi/processor_core.c @@ -1135,6 +1135,9 @@ static int __init acpi_processor_init(void) { int result = 0; + if (acpi_disabled) + return 0; + memset(&errata, 0, sizeof(errata)); #ifdef CONFIG_SMP @@ -1183,6 +1186,9 @@ out_proc: static void __exit acpi_processor_exit(void) { + if (acpi_disabled) + return; + acpi_processor_ppc_exit(); acpi_thermal_cpufreq_exit();