[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <cover.1612924255.git.luto@kernel.org>
Date: Tue, 9 Feb 2021 18:33:32 -0800
From: Andy Lutomirski <luto@...nel.org>
To: x86@...nel.org
Cc: LKML <linux-kernel@...r.kernel.org>,
Dave Hansen <dave.hansen@...ux.intel.com>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Yonghong Song <yhs@...com>,
Masami Hiramatsu <mhiramat@...nel.org>,
Andy Lutomirski <luto@...nel.org>
Subject: [PATCH v2 00/14] x86/fault: #PF improvements, mostly related to USER bit
This series is a whole bunch of page fault cleanups, plus a couple
of OOPS diagnostic improvements. The overall goals are to clean up
handling of the faulting CPL, the USER bit in the error_code, and
the log messages generated by #PF OOPSes.
This series can also be seen as CET preparation. CET introduces the
WRUSS instruction, which is the very first way for CPL 0 code to
cause a #PF fault with the USER bit set. Let's get the page fault
code into shape before we start using WRUSS :)
Changes from v1:
- Various changelog improvements.
- Reorder patches (SMAP moved after SMEP)
- Add the efi_recover_from_page_fault() patch
- Tidy up and improve the AMD erratum detection code
Andy Lutomirski (14):
x86/fault: Fix AMD erratum #91 errata fixup for user code
x86/fault: Skip the AMD erratum #91 workaround on unaffected CPUs
x86/fault: Fold mm_fault_error() into do_user_addr_fault()
x86/fault/32: Move is_f00f_bug() to do_kern_addr_fault()
x86/fault: Document the locking in the fault_signal_pending() path
x86/fault: Correct a few user vs kernel checks wrt WRUSS
x86/fault: Improve kernel-executing-user-memory handling
x86/fault: Skip erratum #93 workaround on new CPUs
x86/fault: Split the OOPS code out from no_context()
x86/fault: Bypass no_context() for implicit kernel faults from
usermode
x86/fault: Rename no_context() to kernelmode_fixup_or_oops()
x86/fault: Don't look for extable entries for SMEP violations
x86/fault: Don't run fixups for SMAP violations
x86/fault, x86/efi: Fix and rename efi_recover_from_page_fault()
arch/x86/include/asm/efi.h | 2 +-
arch/x86/mm/fault.c | 380 +++++++++++++++++++--------------
arch/x86/platform/efi/quirks.c | 16 +-
3 files changed, 227 insertions(+), 171 deletions(-)
--
2.29.2
Powered by blists - more mailing lists