A set of x86 fixes:
- Fix 32-bit PTI for real. pti_clone_entry_text() is called twice, once
before initcalls so that initcalls can use the user-mode helper and
then again after text is set read only. Setting read only on 32-bit
might break up the PMD mapping, which makes the second invocation of
pti_clone_entry_text() find the mappings out of sync and failing.
Allow the second call to split the existing PMDs in the user mapping
and synchronize with the kernel mapping.
- Don't make acpi_mp_wake_mailbox not read only after init as the mail
box must be writable in the case that CPU hotplug operations happen
after boot. Otherwise the attempt to start a CPU crashes with a write
to read only memory.
- Add a missing sanity check in mtrr_save_state() to ensure that the
fixed MTRR MSRs are supported.
Otherwise mtrr_save_state() ends up in a #GP, which is fixed up, but
the WARN_ON() can bring systems down when panic on warn is set.