This fixes a 32-bit boot warning, a 32-bit boot oddity that seems
unsymtomatic right now, and a potential userspace corruption issue
across EFI calls if PCID is enabled.

With this series applied, the only remaining issue I'm aware of is
the paging-structure cache laziness problem.

I've tested SMP boot, suspend/resume, hotplug/unplug, and hibernate
on a 32-bit VM, a 64-bit VM, and a 64-bit laptop.  (Except hibernate
on the laptop -- my laptop can't resume from hibernation on *any*
kernel due to a userspace (systemd? Fedora overall integration?)
issue.)

Andy Lutomirski (4):
  x86/mm: Factor out CR3-building code
  x86/mm/64: Stop using CR3.PCID == 0 in ASID-aware code
  x86/mm/32: Move setup_clear_cpu_cap(X86_FEATURE_PCID) earlier
  x86/mm/32: Load a sane CR3 before cpu_init() on secondary CPUs

 arch/x86/include/asm/mmu_context.h | 32 ++++++++++++++++++++++++++++----
 arch/x86/kernel/cpu/bugs.c         |  8 --------
 arch/x86/kernel/cpu/common.c       |  8 ++++++++
 arch/x86/kernel/smpboot.c          | 13 +++++++------
 arch/x86/mm/tlb.c                  | 11 +++++------
 5 files changed, 48 insertions(+), 24 deletions(-)

-- 
2.13.5

Reply via email to