diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.9.21/0012-x86-speculation-objtool-Annotate-indirect-calls-jump.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.9.21/0012-x86-speculation-objtool-Annotate-indirect-calls-jump.patch | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.9.21/0012-x86-speculation-objtool-Annotate-indirect-calls-jump.patch b/common/recipes-kernel/linux/linux-yocto-4.9.21/0012-x86-speculation-objtool-Annotate-indirect-calls-jump.patch deleted file mode 100644 index 62777941..00000000 --- a/common/recipes-kernel/linux/linux-yocto-4.9.21/0012-x86-speculation-objtool-Annotate-indirect-calls-jump.patch +++ /dev/null @@ -1,101 +0,0 @@ -From 05395f5046a3ff9280cde5804ff4505bbd42b115 Mon Sep 17 00:00:00 2001 -From: Peter Zijlstra <peterz@infradead.org> -Date: Wed, 17 Jan 2018 22:34:34 +0100 -Subject: [PATCH 12/14] x86/speculation, objtool: Annotate indirect calls/jumps - for objtool - -commit 9e0e3c5130e949c389caabc8033e9799b129e429 upstream. - -Annotate the indirect calls/jumps in the CALL_NOSPEC/JUMP_NOSPEC -alternatives. - -Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> -Reviewed-by: David Woodhouse <dwmw@amazon.co.uk> -Acked-by: Thomas Gleixner <tglx@linutronix.de> -Acked-by: Josh Poimboeuf <jpoimboe@redhat.com> -Cc: Andy Lutomirski <luto@kernel.org> -Cc: Arjan van de Ven <arjan@linux.intel.com> -Cc: Borislav Petkov <bp@alien8.de> -Cc: Dan Williams <dan.j.williams@intel.com> -Cc: Dave Hansen <dave.hansen@linux.intel.com> -Cc: David Woodhouse <dwmw2@infradead.org> -Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> -Cc: Linus Torvalds <torvalds@linux-foundation.org> -Cc: Peter Zijlstra <peterz@infradead.org> -Signed-off-by: Ingo Molnar <mingo@kernel.org> -Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> ---- - arch/x86/include/asm/nospec-branch.h | 27 +++++++++++++++++++++++---- - 1 file changed, 23 insertions(+), 4 deletions(-) - -diff --git a/arch/x86/include/asm/nospec-branch.h b/arch/x86/include/asm/nospec-branch.h -index 031840a..29e8f30 100644 ---- a/arch/x86/include/asm/nospec-branch.h -+++ b/arch/x86/include/asm/nospec-branch.h -@@ -68,6 +68,18 @@ - .endm - - /* -+ * This should be used immediately before an indirect jump/call. It tells -+ * objtool the subsequent indirect jump/call is vouched safe for retpoline -+ * builds. -+ */ -+.macro ANNOTATE_RETPOLINE_SAFE -+ .Lannotate_\@: -+ .pushsection .discard.retpoline_safe -+ _ASM_PTR .Lannotate_\@ -+ .popsection -+.endm -+ -+/* - * These are the bare retpoline primitives for indirect jmp and call. - * Do not use these directly; they only exist to make the ALTERNATIVE - * invocation below less ugly. -@@ -103,9 +115,9 @@ - .macro JMP_NOSPEC reg:req - #ifdef CONFIG_RETPOLINE - ANNOTATE_NOSPEC_ALTERNATIVE -- ALTERNATIVE_2 __stringify(jmp *\reg), \ -+ ALTERNATIVE_2 __stringify(ANNOTATE_RETPOLINE_SAFE; jmp *\reg), \ - __stringify(RETPOLINE_JMP \reg), X86_FEATURE_RETPOLINE, \ -- __stringify(lfence; jmp *\reg), X86_FEATURE_RETPOLINE_AMD -+ __stringify(lfence; ANNOTATE_RETPOLINE_SAFE; jmp *\reg), X86_FEATURE_RETPOLINE_AMD - #else - jmp *\reg - #endif -@@ -114,9 +126,9 @@ - .macro CALL_NOSPEC reg:req - #ifdef CONFIG_RETPOLINE - ANNOTATE_NOSPEC_ALTERNATIVE -- ALTERNATIVE_2 __stringify(call *\reg), \ -+ ALTERNATIVE_2 __stringify(ANNOTATE_RETPOLINE_SAFE; call *\reg), \ - __stringify(RETPOLINE_CALL \reg), X86_FEATURE_RETPOLINE,\ -- __stringify(lfence; call *\reg), X86_FEATURE_RETPOLINE_AMD -+ __stringify(lfence; ANNOTATE_RETPOLINE_SAFE; call *\reg), X86_FEATURE_RETPOLINE_AMD - #else - call *\reg - #endif -@@ -144,6 +156,12 @@ - ".long 999b - .\n\t" \ - ".popsection\n\t" - -+#define ANNOTATE_RETPOLINE_SAFE \ -+ "999:\n\t" \ -+ ".pushsection .discard.retpoline_safe\n\t" \ -+ _ASM_PTR " 999b\n\t" \ -+ ".popsection\n\t" -+ - #if defined(CONFIG_X86_64) && defined(RETPOLINE) - - /* -@@ -153,6 +171,7 @@ - # define CALL_NOSPEC \ - ANNOTATE_NOSPEC_ALTERNATIVE \ - ALTERNATIVE( \ -+ ANNOTATE_RETPOLINE_SAFE \ - "call *%[thunk_target]\n", \ - "call __x86_indirect_thunk_%V[thunk_target]\n", \ - X86_FEATURE_RETPOLINE) --- -2.7.4 - |