linux_dsm_epyc7002/tools/objtool
Josh Poimboeuf b68b990706 objtool: Support conditional retpolines
A Clang-built kernel is showing the following warning:

  arch/x86/kernel/platform-quirks.o: warning: objtool: x86_early_init_platform_quirks()+0x84: unreachable instruction

That corresponds to this code:

  7e:   0f 85 00 00 00 00       jne    84 <x86_early_init_platform_quirks+0x84>
                        80: R_X86_64_PC32       __x86_indirect_thunk_r11-0x4
  84:   c3                      retq

This is a conditional retpoline sibling call, which is now possible
thanks to retpolines.  Objtool hasn't seen that before.  It's
incorrectly interpreting the conditional jump as an unconditional
dynamic jump.

Reported-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/30d4c758b267ef487fb97e6ecb2f148ad007b554.1563413318.git.jpoimboe@redhat.com
2019-07-18 21:01:10 +02:00
..
arch/x86 objtool: Convert insn type to enum 2019-07-18 21:01:10 +02:00
Documentation
.gitignore
arch.h objtool: Support conditional retpolines 2019-07-18 21:01:10 +02:00
Build
builtin-check.c
builtin-orc.c
builtin.h
cfi.h
check.c objtool: Support conditional retpolines 2019-07-18 21:01:10 +02:00
check.h objtool: Convert insn type to enum 2019-07-18 21:01:10 +02:00
elf.c objtool: Refactor jump table code 2019-07-18 21:01:09 +02:00
elf.h objtool: Support repeated uses of the same C jump table 2019-07-18 21:01:09 +02:00
Makefile
objtool.c
orc_dump.c
orc_gen.c
orc.h
special.c
special.h
sync-check.sh
warn.h