[PATCH entry v2 0/6] x86/entry: Fixes and cleanups

From: Andy Lutomirski
Date: Fri Jul 03 2020 - 13:03:03 EST


These are in priority order. Patch 1 could be folded into the patch
it fixes. The selftests improve my confidence in the correctness of
the whole pile. The next two patches fix IDTENTRY miswiring. The
last two are optional and could easily wait until the next merge
window.

Andy Lutomirski (6):
x86/entry/compat: Clear RAX high bits on Xen PV SYSENTER
x86/entry, selftests: Further improve user entry sanity checks
x86/entry/xen: Route #DB correctly on Xen PV
x86/entry/32: Fix #MC and #DB wiring on x86_32
x86/ldt: Disable 16-bit segments on Xen PV
x86/entry: Rename idtentry_enter/exit_cond_rcu() to
idtentry_enter/exit()

arch/x86/entry/common.c | 69 +++++++++++++++-------
arch/x86/entry/entry_64_compat.S | 19 +++---
arch/x86/include/asm/idtentry.h | 75 +++++++++++-------------
arch/x86/kernel/cpu/mce/core.c | 4 +-
arch/x86/kernel/kvm.c | 6 +-
arch/x86/kernel/ldt.c | 35 ++++++++++-
arch/x86/kernel/traps.c | 20 +++++--
arch/x86/mm/fault.c | 6 +-
arch/x86/xen/enlighten_pv.c | 28 +++++++--
arch/x86/xen/xen-asm_64.S | 5 +-
kernel/time/tick-sched.c | 1 +
tools/testing/selftests/x86/syscall_nt.c | 11 ++++
12 files changed, 189 insertions(+), 90 deletions(-)

--
2.25.4