2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-27 14:43:58 +08:00
linux-next/arch/x86/entry
Andy Lutomirski a1a338e5b6 x86/entry/32: Unwind the ESPFIX stack earlier on exception entry
Right now, we do some fancy parts of the exception entry path while SS
might have a nonzero base: we fill in regs->ss and regs->sp, and we
consider switching to the kernel stack. This results in regs->ss and
regs->sp referring to a non-flat stack and it may result in
overflowing the entry stack. The former issue means that we can try to
call iret_exc on a non-flat stack, which doesn't work.

Tested with selftests/x86/sigreturn_32.

Fixes: 45d7b25574 ("x86/entry/32: Enter the kernel via trampoline stack")
Signed-off-by: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: stable@kernel.org
2019-11-21 19:37:44 +01:00
..
syscalls x86/syscalls: Split the x32 syscalls into their own table 2019-07-22 10:31:23 +02:00
vdso Kbuild updates for v5.4 2019-09-20 08:36:47 -07:00
vsyscall Merge branch 'siginfo-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace 2019-07-08 21:48:15 -07:00
calling.h Merge branch master from git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 2019-07-28 22:22:40 +02:00
common.c x86/syscalls: Split the x32 syscalls into their own table 2019-07-22 10:31:23 +02:00
entry_32.S x86/entry/32: Unwind the ESPFIX stack earlier on exception entry 2019-11-21 19:37:44 +01:00
entry_64_compat.S x86/entry/64/compat: Fix stack switching for XEN PV 2019-01-18 00:39:33 +01:00
entry_64.S Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-09-16 18:07:08 -07:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
syscall_32.c syscalls/x86: Unconditionally enable 'struct pt_regs' based syscalls on x86_64 2018-04-05 16:59:38 +02:00
syscall_64.c x86/syscalls: Split the x32 syscalls into their own table 2019-07-22 10:31:23 +02:00
thunk_32.S x86: Use CONFIG_PREEMPTION 2019-07-31 19:03:35 +02:00
thunk_64.S x86: Use CONFIG_PREEMPTION 2019-07-31 19:03:35 +02:00