linux/arch/um/kernel
Peter Zijlstra 7508500900 x86/alternative: Implement .retpoline_sites support
Rewrite retpoline thunk call sites to be indirect calls for
spectre_v2=off. This ensures spectre_v2=off is as near to a
RETPOLINE=n build as possible.

This is the replacement for objtool writing alternative entries to
ensure the same and achieves feature-parity with the previous
approach.

One noteworthy feature is that it relies on the thunks to be in
machine order to compute the register index.

Specifically, this does not yet address the Jcc __x86_indirect_thunk_*
calls generated by clang, a future patch will add this.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Borislav Petkov <bp@suse.de>
Acked-by: Josh Poimboeuf <jpoimboe@redhat.com>
Tested-by: Alexei Starovoitov <ast@kernel.org>
Link: https://lore.kernel.org/r/20211026120310.232495794@infradead.org
2021-10-28 23:25:27 +02:00
..
skas This pull request contains the following changes for UML: 2021-09-09 13:45:26 -07:00
asm-offsets.c
config.c.in um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
dyn.lds.S um: Mark all kernel symbols as local 2021-04-15 23:10:29 +02:00
early_printk.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
exec.c um: remove process stub VMA 2021-02-12 21:37:38 +01:00
exitcode.c proc: convert everything to "struct proc_ops" 2020-02-04 03:05:26 +00:00
gprof_syms.c um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
initrd.c um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
ioport.c um: add PCI over virtio emulation driver 2021-06-17 21:45:43 +02:00
irq.c um: add PCI over virtio emulation driver 2021-06-17 21:45:43 +02:00
kmsg_dump.c printk: introduce a kmsg_dump iterator 2021-03-08 11:43:27 +01:00
ksyms.c um: export signals_enabled directly 2021-06-17 21:44:51 +02:00
maccess.c maccess: rename probe_kernel_{read,write} to copy_{from,to}_kernel_nofault 2020-06-17 10:57:41 -07:00
Makefile um: Add support for host CPU flags and alignment 2021-06-17 22:01:26 +02:00
mem.c This pull request contains the following changes for UML: 2021-05-04 18:15:10 -07:00
physmem.c um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
process.c sched: Introduce task_is_running() 2021-06-18 11:43:07 +02:00
ptrace.c um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
reboot.c um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
sigio.c um: Support dynamic IRQ allocation 2020-12-13 22:22:08 +01:00
signal.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
stacktrace.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
syscall.c um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
sysrq.c um: Clean up stacktrace dump 2020-10-11 23:25:07 +02:00
time.c um: time-travel/signals: fix ndelay() in interrupt 2021-06-17 21:44:52 +02:00
tlb.c um: remove process stub VMA 2021-02-12 21:37:38 +01:00
trap.c trap: cleanup trap_init() 2021-09-08 11:50:27 -07:00
um_arch.c x86/alternative: Implement .retpoline_sites support 2021-10-28 23:25:27 +02:00
umid.c um: Add SPDX headers to files in arch/um/kernel/ 2019-09-15 21:37:17 +02:00
uml.lds.S um: Mark all kernel symbols as local 2021-04-15 23:10:29 +02:00
vmlinux.lds.S