x86: Don't rely on VMWare emulating PAT MSR correctly
authorJuergen Gross <[email protected]>
Mon, 12 Jan 2015 05:15:45 +0000 (06:15 +0100)
committerThomas Gleixner <[email protected]>
Tue, 20 Jan 2015 13:33:45 +0000 (14:33 +0100)
commit9d34cfdf47963905d792ae9c000efa522739abe4
treecc408b47f8f71877647dcf4ab6252f64e96fc1fd
parent4a0d3107d6b19125f21172c2b7d95f9c30ecaf6f
x86: Don't rely on VMWare emulating PAT MSR correctly

VMWare seems not to emulate the PAT MSR correctly: reaeding
MSR_IA32_CR_PAT returns 0 even after writing another value to it.

Commit bd809af16e3ab triggers this VMWare bug when the kernel is
booted as a VMWare guest.

Detect this bug and don't use the read value if it is 0.

Fixes: bd809af16e3ab "x86: Enable PAT to use cache mode translation tables"
Reported-and-tested-by: Jongman Heo <[email protected]>
Acked-by: Alok N Kataria <[email protected]>
Signed-off-by: Juergen Gross <[email protected]>
Link: http://lkml.kernel.org/r/[email protected]
Signed-off-by: Thomas Gleixner <[email protected]>
arch/x86/mm/pat.c