x86: cleanup PAT cpu validation
authorThomas Gleixner <tglx@linutronix.de>
Thu, 8 May 2008 07:18:43 +0000 (09:18 +0200)
committerIngo Molnar <mingo@elte.hu>
Thu, 8 May 2008 13:43:51 +0000 (15:43 +0200)
commit8d4a4300854f3971502e81dacd930704cb88f606
treed091b49851e60af1530dd3d7cd54057f98d48ffb
parentcb3f43b22bbb5ddbf6ce3e2bac40ce6eba30aba0
x86: cleanup PAT cpu validation

Move the scattered checks for PAT support to a single function. Its
moved to addon_cpuid_features.c as this file is shared between 32 and
64 bit.

Remove the manipulation of the PAT feature bit and just disable PAT in
the PAT layer, based on the PAT bit provided by the CPU and the
current CPU version/model white list.

Change the boot CPU check so it works on Voyager somewhere in the
future as well :) Also panic, when a secondary has PAT disabled but
the primary one has alrady switched to PAT. We have no way to undo
that.

The white list is kept for now to ensure that we can rely on known to
work CPU types and concentrate on the software induced problems
instead of fighthing CPU erratas and subtle wreckage caused by not yet
verified CPUs. Once the PAT code has stabilized enough, we can remove
the white list and open the can of worms.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/cpu/addon_cpuid_features.c
arch/x86/kernel/cpu/common.c
arch/x86/kernel/setup_64.c
arch/x86/mm/pat.c
include/asm-x86/pat.h