]> git.baikalelectronics.ru Git - kernel.git/commit
x86/entry/64: Remove the SYSCALL64 fast path
authorAndy Lutomirski <luto@kernel.org>
Sun, 28 Jan 2018 18:38:49 +0000 (10:38 -0800)
committerThomas Gleixner <tglx@linutronix.de>
Tue, 30 Jan 2018 14:30:36 +0000 (15:30 +0100)
commit3ff45ceeff4d56176913a5e9a401be69b9fdb1b0
treeb2b77e5b404afb963a62f51e456a2885022cc164
parent465ee8490e117406526e896a2ada03e6d448e83c
x86/entry/64: Remove the SYSCALL64 fast path

The SYCALLL64 fast path was a nice, if small, optimization back in the good
old days when syscalls were actually reasonably fast.  Now there is PTI to
slow everything down, and indirect branches are verboten, making everything
messier.  The retpoline code in the fast path is particularly nasty.

Just get rid of the fast path. The slow path is barely slower.

[ tglx: Split out the 'push all extra regs' part ]

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Kernel Hardening <kernel-hardening@lists.openwall.com>
Link: https://lkml.kernel.org/r/462dff8d4d64dfbfc851fbf3130641809d980ecd.1517164461.git.luto@kernel.org
arch/x86/entry/entry_64.S
arch/x86/entry/syscall_64.c