[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20080520195846.GA29806@redhat.com>
Date: Tue, 20 May 2008 15:58:46 -0400
From: Dave Jones <davej@...hat.com>
To: Mikael Pettersson <mikpe@...uu.se>
Cc: Yinghai Lu <yhlu.kernel@...il.com>,
Linux Kernel <linux-kernel@...r.kernel.org>,
Ingo Molnar <mingo@...e.hu>,
Thomas Gleixner <tglx@...utronix.de>, hpa@...or.com
Subject: Re: [X86] Add a boot parameter to force-enable PAT
* Add an enablepat boot parameter, useful for testing CPUs not yet
added to the whitelist.
* Don't try to enable PAT if it was never enabled in the first place.
Signed-off-by: Dave Jones <davej@...hat.com>
diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt
index 72c07a0..e179c22 100644
--- a/Documentation/kernel-parameters.txt
+++ b/Documentation/kernel-parameters.txt
@@ -236,6 +236,10 @@ and is between 256 and 4096 characters. It is defined in the file
try_unsupported: try to drive unsupported chipsets
(may crash computer or cause data corruption)
+ enablepat [i386,x86-64]
+ Force the CPU's PAT feature to be used even if it
+ isn't in the kernel's whitelist.
+
enable_timer_pin_1 [i386,x86-64]
Enable PIN 1 of APIC timer
Can be useful to work around chipset bugs
diff --git a/arch/x86/kernel/cpu/addon_cpuid_features.c b/arch/x86/kernel/cpu/addon_cpuid_features.c
index c2e1ce3..e22e809 100644
--- a/arch/x86/kernel/cpu/addon_cpuid_features.c
+++ b/arch/x86/kernel/cpu/addon_cpuid_features.c
@@ -50,9 +50,27 @@ void __cpuinit init_scattered_cpuid_features(struct cpuinfo_x86 *c)
}
}
+static int forcepat;
+
+static int __init x86_forcepat_setup(char *s)
+{
+ forcepat = 1;
+ return 1;
+}
+__setup("enablepat", x86_forcepat_setup);
+
+
#ifdef CONFIG_X86_PAT
void __cpuinit validate_pat_support(struct cpuinfo_x86 *c)
{
+ if (!test_cpu_cap(c, X86_FEATURE_PAT))
+ return;
+
+ if (forcepat == 1) {
+ printk(KERN_INFO "Force enabling PAT\n");
+ return;
+ }
+
switch (c->x86_vendor) {
case X86_VENDOR_AMD:
if (c->x86 >= 0xf && c->x86 <= 0x11)
--
http://www.codemonkey.org.uk
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists