OSDN Git Service

x86/retpoline: Use -mfunction-return
authorPeter Zijlstra <peterz@infradead.org>
Tue, 14 Jun 2022 21:15:36 +0000 (23:15 +0200)
committerBorislav Petkov <bp@suse.de>
Mon, 27 Jun 2022 08:33:58 +0000 (10:33 +0200)
commit0b53c374b9eff2255a386f1f1cfb9a928e52a5ae
tree6c68189d053efd4ff530c6ba2b0bb86c7298d6f0
parent00e1533325fd1fb5459229fe37f235462649f668
x86/retpoline: Use -mfunction-return

Utilize -mfunction-return=thunk-extern when available to have the
compiler replace RET instructions with direct JMPs to the symbol
__x86_return_thunk. This does not affect assembler (.S) sources, only C
sources.

-mfunction-return=thunk-extern has been available since gcc 7.3 and
clang 15.

Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Josh Poimboeuf <jpoimboe@kernel.org>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
arch/x86/Makefile
arch/x86/include/asm/nospec-branch.h
arch/x86/lib/retpoline.S