According to Peter Zijlstra's suggestion in https://lkml.org/lkml/2018/9/18/1016, hard bind retpoline with compiler support and remove minimal stuff.
Tested with both CONFIG_RETPOLINE enabled and disabled. -v2: Add compiler support check in Kconfig [Masahiro] Drop 3rd patch as __insn_is_indirect_jump() may be used in some corner case.[PeterZ] Zhenzhong Duan (2): retpolines: Only enable retpoline when compiler support it retpolines: Remove the minimal stuff of retpoline support arch/x86/Kconfig | 6 ++---- arch/x86/Makefile | 4 +--- arch/x86/include/asm/nospec-branch.h | 12 ++++++------ arch/x86/kernel/cpu/bugs.c | 13 ++----------- scripts/Makefile.build | 2 -- 5 files changed, 11 insertions(+), 26 deletions(-) -- 1.8.3.1