linux_dsm_epyc7002/arch/x86
Linus Torvalds ea6f043fc9 x86: Make __get_user() generate an out-of-line call
Instead of inlining the whole stac/lfence/mov/clac sequence (which also
requires individual exception table entries and several asm instruction
alternatives entries), just generate "call __get_user_nocheck_X" for the
__get_user() cases.

We can use all the same infrastructure that we already do for the
regular "get_user()", and the end result is simpler source code, and
much simpler code generation.

It also means that when I introduce asm goto with input for
"unsafe_get_user()", there are no nasty interactions with the
__get_user() code.

Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Borislav Petkov <bp@alien8.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2020-10-12 16:57:57 -07:00
..
boot Remove a couple of ancient and distracting printouts from the x86 build, 2020-10-12 15:14:11 -07:00
configs * A defconfig fix, from Daniel Díaz. 2020-09-20 15:06:43 -07:00
crypto crypto: x86/curve25519 - Remove unused carry variables 2020-07-31 18:25:29 +10:00
entry Merge branch 'compat.mount' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2020-10-12 16:44:57 -07:00
events These are the performance events changes for v5.10: 2020-10-12 14:14:35 -07:00
hyperv x86/hyperv: Remove aliases with X64 in their name 2020-09-27 11:34:54 +02:00
ia32 mm: remove unneeded includes of <asm/pgalloc.h> 2020-08-07 11:33:26 -07:00
include x86: Make __get_user() generate an out-of-line call 2020-10-12 16:57:57 -07:00
kernel A single commit harmonizing the x86 and ARM64 Hyper-V constants namespace. 2020-10-12 15:30:32 -07:00
kvm A single commit harmonizing the x86 and ARM64 Hyper-V constants namespace. 2020-10-12 15:30:32 -07:00
lib x86: Make __get_user() generate an out-of-line call 2020-10-12 16:57:57 -07:00
math-emu treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
mm Do not sync vmalloc/ioremap mappings on x86-64 kernels. 2020-10-12 15:02:38 -07:00
net bpf, i386: Remove unneeded conversion to bool 2020-05-07 16:29:14 +02:00
oprofile
pci x86/irq: Make most MSI ops XEN private 2020-09-16 16:52:38 +02:00
platform EFI changes for v5.10: 2020-10-12 13:26:49 -07:00
power Kbuild updates for v5.9 2020-08-09 14:10:26 -07:00
purgatory Misc fixes and small updates all around the place: 2020-08-15 10:38:03 -07:00
ras treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
realmode Rebase locking/kcsan to locking/urgent 2020-06-11 20:02:46 +02:00
tools .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
um saner calling conventions for csum_and_copy_..._user() 2020-08-20 15:45:15 -04:00
video
xen x86/paravirt: Remove set_pte_at() pv-op 2020-08-15 13:52:12 +02:00
.gitignore .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
Kbuild
Kconfig This tree introduces static_call(), which is the idea of static_branch() 2020-10-12 13:58:15 -07:00
Kconfig.assembler x86/delay: Introduce TPAUSE delay 2020-05-07 16:06:20 +02:00
Kconfig.cpu treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
Kconfig.debug x86, powerpc: Rename memcpy_mcsafe() to copy_mc_to_{user, kernel}() 2020-10-06 11:18:04 +02:00
Makefile x86/build: Warn on orphan section placement 2020-09-03 10:28:36 +02:00
Makefile_32.cpu
Makefile.um