public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Ben Greear <greearb@candelatech.com>,
	Yinghai Lu <yinghai@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>,
	Thomas Gleixner <tglx@linutronix.de>,
	"Maciej W. Rozycki" <macro@linux-mips.org>
Cc: linux-kernel <linux-kernel@vger.kernel.org>, len.brown@intel.com
Subject: Re: PATCH:  Allow over-ride of smp_found_cfg with kernel cmd-line option.
Date: Thu, 5 Feb 2009 20:58:32 +0100	[thread overview]
Message-ID: <20090205195832.GD3129@elte.hu> (raw)
In-Reply-To: <498B421D.9090609@candelatech.com>


* Ben Greear <greearb@candelatech.com> wrote:

> Allow user to keep smp_found_cfg set to 1 even if MADT
> cannot be parsed.  This works around funky BIOS on FWA-7304
> (VIA CN700 chipset) system, and possibly other systems as well.
> Without this override, performance drops by around 15% on
> network throughput tests on this system.
>
> This is based on 2.6.29-rc3
>
> Signed-Off-By:  Ben Greear <greearb@candelatech.com>
>
>
> Thanks,
> Ben
>
> -- 
> Ben Greear <greearb@candelatech.com>
> Candela Technologies Inc  http://www.candelatech.com
>

> diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
> index d37593c..e96bf19 100644
> --- a/arch/x86/kernel/acpi/boot.c
> +++ b/arch/x86/kernel/acpi/boot.c
> @@ -87,6 +87,7 @@ u8 acpi_sci_flags __initdata;
>  int acpi_sci_override_gsi __initdata;
>  int acpi_skip_timer_override __initdata;
>  int acpi_use_timer_override __initdata;
> +int force_smp_found_cfg __initdata;
>  
>  #ifdef CONFIG_X86_LOCAL_APIC
>  static u64 acpi_lapic_addr __initdata = APIC_DEFAULT_PHYS_BASE;
> @@ -1335,6 +1336,14 @@ static void __init early_acpi_process_madt(void)
>  #endif
>  }
>  
> +static int __init parse_force_smp_found_cfg(char *arg)
> +{
> +	force_smp_found_cfg = 1;
> +	return 0;
> +}
> +early_param("force_smp_found_cfg", parse_force_smp_found_cfg);
> +
> +
>  static void __init acpi_process_madt(void)
>  {
>  #ifdef CONFIG_X86_LOCAL_APIC
> @@ -1381,9 +1390,14 @@ static void __init acpi_process_madt(void)
>   		 * Boot with "acpi=off" to use MPS on such a system.
>   		 */
>  		if (smp_found_config) {
> -			printk(KERN_WARNING PREFIX
> -				"No APIC-table, disabling MPS\n");
> -			smp_found_config = 0;
> +			if (force_smp_found_cfg)
> +				printk(KERN_WARNING PREFIX
> +				       "No APIC-table, wanted to disable MPS, but will not\n  due to force_smp_found_cfg=1\n");
> +			else {
> +				printk(KERN_WARNING PREFIX
> +				       "No APIC-table, disabling MPS.  Use force_smp_found_cfg=1 to override\n");
> +				smp_found_config = 0;
> +			}
>  		}
>  	}
>  

I'd _much_ rather have a warning message printed and have a default, 
unconditional fallback to mptable parsing in this case.

I.e. same end result just no ugly and inconvenient force_smp_found_cfg.

The mptable works fine in most such cases to enumerate apic details. (as it 
does in your case, evidently)

And if both the ACPI and the MPTABLE is hosed on a box, it cannot be of much 
use on other OSs either, right?

So please do a patch that removes the 'smp_found_config' and which changes 
the warning message to warn about no ACPI table in the MADT table. Ok?

	Ingo

  parent reply	other threads:[~2009-02-05 19:59 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-05 19:46 PATCH: Allow over-ride of smp_found_cfg with kernel cmd-line option Ben Greear
2009-02-05 19:52 ` Randy Dunlap
2009-02-05 19:58 ` Ingo Molnar [this message]
2009-02-05 20:45   ` Ben Greear
2009-02-06 19:21   ` PATCH: (v2) " Ben Greear
2009-02-06 19:30     ` Randy Dunlap
2009-02-06 19:34       ` Yinghai Lu
2009-02-06 20:27         ` PATCH: (v3) " Ben Greear
2009-02-07  2:57           ` Len Brown
2009-02-06 19:31 ` PATCH: " Ingo Molnar
2009-02-07  3:00   ` Len Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20090205195832.GD3129@elte.hu \
    --to=mingo@elte.hu \
    --cc=greearb@candelatech.com \
    --cc=hpa@zytor.com \
    --cc=len.brown@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=macro@linux-mips.org \
    --cc=tglx@linutronix.de \
    --cc=yinghai@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox