On Thu, 8 May 2008, Rene Herman wrote:Okay, so how's this? Seem to work well for me and makes me happy. Only
tested on UP.
Looks sane to me.
Not that I ever really saw the point about this whole argument in the first place. Clearing the flags wasn't really wrong to begin with.
diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c
index 277446c..6ee3efb 100644
--- a/arch/x86/mm/pat.c
+++ b/arch/x86/mm/pat.c
@@ -43,7 +43,7 @@ static int pat_known_cpu(void)
if (!pat_wc_enabled)
return 0;
- if (cpu_has_pat)
+ if (cpu_has_pat && cpu_has_pat_good)
return 1;
pat_wc_enabled = 0;