linux_dsm_epyc7002/arch/x86/entry
Chang S. Bae eaad981291 x86/entry/64: Introduce the FIND_PERCPU_BASE macro
GSBASE is used to find per-CPU data in the kernel. But when GSBASE is
unknown, the per-CPU base can be found from the per_cpu_offset table with a
CPU NR.  The CPU NR is extracted from the limit field of the CPUNODE entry
in GDT, or by the RDPID instruction. This is a prerequisite for using
FSGSBASE in the low level entry code.

Also, add the GAS-compatible RDPID macro as binutils 2.23 do not support
it. Support is added in version 2.27.

[ tglx: Massaged changelog ]

Suggested-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Chang S. Bae <chang.seok.bae@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Link: https://lkml.kernel.org/r/1557309753-24073-12-git-send-email-chang.seok.bae@intel.com
Link: https://lkml.kernel.org/r/20200528201402.1708239-11-sashal@kernel.org
2020-06-18 15:47:04 +02:00
..
syscalls vfs: add faccessat2 syscall 2020-05-14 16:44:25 +02:00
vdso Rebase locking/kcsan to locking/urgent 2020-06-11 20:02:46 +02:00
vsyscall y2038: syscall implementation cleanups 2019-12-01 14:00:59 -08:00
calling.h x86/entry/64: Introduce the FIND_PERCPU_BASE macro 2020-06-18 15:47:04 +02:00
common.c x86/entry: Force rcu_irq_enter() when in idle task 2020-06-12 21:36:33 +02:00
entry_32.S x86/entry: Unbreak __irqentry_text_start/end magic 2020-06-11 15:15:29 +02:00
entry_64_compat.S x86/entry: Make entry_64_compat.S objtool clean 2020-06-11 15:14:40 +02:00
entry_64.S x86/entry/64: Switch CR3 before SWAPGS in paranoid entry 2020-06-18 15:47:03 +02:00
Makefile x86/entry: Make entry_64_compat.S objtool clean 2020-06-11 15:14:40 +02:00
syscall_32.c x86/entry: Drop asmlinkage from syscalls 2020-03-21 16:03:25 +01:00
syscall_64.c x86/entry: Drop asmlinkage from syscalls 2020-03-21 16:03:25 +01:00
syscall_x32.c x86/entry: Drop asmlinkage from syscalls 2020-03-21 16:03:25 +01:00
thunk_32.S x86/entry: Rename ___preempt_schedule 2020-03-21 16:03:53 +01:00
thunk_64.S x86/entry: Remove the TRACE_IRQS cruft 2020-06-11 15:15:19 +02:00