linux/arch/x86
Lai Jiangshan 520a7e80c9 x86/entry: Switch the stack after error_entry() returns
error_entry() calls fixup_bad_iret() before sync_regs() if it is a fault
from a bad IRET, to copy pt_regs to the kernel stack. It switches to the
kernel stack directly after sync_regs().

But error_entry() itself is also a function call, so it has to stash
the address it is going to return to, in %r12 which is unnecessarily
complicated.

Move the stack switching after error_entry() and get rid of the need to
handle the return address.

  [ bp: Massage commit message. ]

Signed-off-by: Lai Jiangshan <jiangshan.ljs@antgroup.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lore.kernel.org/r/20220503032107.680190-3-jiangshanlai@gmail.com
2022-05-03 11:35:34 +02:00
..
boot memcpy updates for v5.18-rc1 2022-03-26 12:19:04 -07:00
coco x86/coco: Add API to handle encryption mask 2022-02-23 19:14:29 +01:00
configs x86/config: Make the x86 defconfigs a bit more usable 2022-03-27 20:58:35 +02:00
crypto This push fixes the following issues: 2022-03-31 11:17:39 -07:00
entry x86/entry: Switch the stack after error_entry() returns 2022-05-03 11:35:34 +02:00
events perf/x86/cstate: Add SAPPHIRERAPIDS_X CPU support 2022-04-19 21:15:42 +02:00
hyperv hyperv-next for 5.17 2022-01-16 15:53:00 +02:00
ia32
include x86/traps: Use pt_regs directly in fixup_bad_iret() 2022-05-03 11:18:59 +02:00
kernel x86/traps: Use pt_regs directly in fixup_bad_iret() 2022-05-03 11:18:59 +02:00
kvm KVM: x86: work around QEMU issue with synthetic CPUID leaves 2022-04-29 15:24:58 -04:00
lib - A fix to disable PCI/MSI[-X] masking for XEN_HVM guests as that is 2022-05-01 10:03:36 -07:00
math-emu x86: Prepare asm files for straight-line-speculation 2021-12-08 12:25:37 +01:00
mm Revert "x86/mm: Introduce lookup_address_in_mm()" 2022-04-29 12:40:41 -04:00
net x86,bpf: Avoid IBT objtool warning 2022-04-07 11:27:02 +02:00
pci x86/pci/xen: Disable PCI/MSI[-X] masking for XEN_HVM guests 2022-04-29 14:37:39 +02:00
platform x86,xen,objtool: Add UNWIND hint 2022-04-19 21:58:47 +02:00
power x86/cpu: Load microcode during restore_processor_state() 2022-04-19 19:37:05 +02:00
purgatory x86/purgatory: Remove -nostdlib compiler flag 2021-12-30 14:13:06 +01:00
ras
realmode - Flush *all* mappings from the TLB after switching to the trampoline 2022-01-10 09:51:38 -08:00
tools x86/build: Use the proper name CONFIG_FW_LOADER 2021-12-29 22:20:38 +01:00
um Merge branch 'work.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2022-04-01 19:57:03 -07:00
video
xen x86/xen: Add ANNOTATE_NOENDBR to startup_xen() 2022-04-19 21:58:49 +02:00
.gitignore
Kbuild x86/cc: Move arch/x86/{kernel/cc_platform.c => coco/core.c} 2022-02-23 18:25:58 +01:00
Kconfig x86/Kconfig: fix the spelling of 'becoming' in X86_KERNEL_IBT config 2022-04-19 21:58:50 +02:00
Kconfig.assembler
Kconfig.cpu x86/mmx_32: Remove X86_USE_3DNOW 2021-12-11 09:09:45 +01:00
Kconfig.debug
Makefile x86: Remove toolchain check for X32 ABI capability 2022-03-15 10:32:48 +01:00
Makefile_32.cpu
Makefile.um