linux-stable/tools/objtool
Josh Poimboeuf dcb38ed5e3 objtool: Don't use ignore flag for fake jumps
[ Upstream commit e6da956795 ]

The ignore flag is set on fake jumps in order to keep
add_jump_destinations() from setting their jump_dest, since it already
got set when the fake jump was created.

But using the ignore flag is a bit of a hack.  It's normally used to
skip validation of an instruction, which doesn't really make sense for
fake jumps.

Also, after the next patch, using the ignore flag for fake jumps can
trigger a false "why am I validating an ignored function?" warning.

Instead just add an explicit check in add_jump_destinations() to skip
fake jumps.

Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/71abc072ff48b2feccc197723a9c52859476c068.1557766718.git.jpoimboe@redhat.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-06-15 11:54:52 +02:00
..
Documentation x86/asm: Fix inline asm call constraints for Clang 2017-09-23 15:06:20 +02:00
arch/x86 objtool, kprobes/x86: Sync the latest <asm/insn.h> header with tools/objtool/arch/x86/include/asm/insn.h 2018-06-21 04:02:58 +09:00
.gitignore objtool: Move synced files to their original relative locations 2017-12-29 17:53:41 +01:00
Build objtool: Add ORC unwind table generation 2017-07-18 10:57:43 +02:00
Makefile objtool: Allow AR to be overridden with HOSTAR 2019-05-25 18:25:26 +02:00
arch.h objtool: Assume unannotated UD2 instructions are dead ends 2017-07-28 08:33:32 +02:00
builtin-check.c objtool: Add module specific retpoline rules 2018-03-15 10:54:38 +01:00
builtin-orc.c objtool: Use existing global variables for options 2018-03-15 10:54:37 +01:00
builtin.h objtool: Add module specific retpoline rules 2018-03-15 10:54:38 +01:00
cfi.h objtool: Handle GCC stack pointer adjustment bug 2017-08-30 10:48:41 +02:00
check.c objtool: Don't use ignore flag for fake jumps 2019-06-15 11:54:52 +02:00
check.h objtool: Add retpoline validation 2018-03-15 10:54:37 +01:00
elf.c objtool: Fix segfault in .cold detection with -ffunction-sections 2018-12-17 09:28:50 +01:00
elf.h objtool: Support GCC 8's cold subfunctions 2018-06-05 11:41:54 +02:00
objtool.c objtool: Print top level commands on incorrect usage 2017-12-25 14:26:14 +01:00
orc.h objtool: Move synced files to their original relative locations 2017-12-29 17:53:41 +01:00
orc_dump.c objtool: Fix 64-bit build on 32-bit host 2017-12-29 17:53:42 +01:00
orc_gen.c objtool: Warn on stripped section symbol 2018-02-07 11:12:21 -08:00
special.c objtool: Implement stack validation 2.0 2017-06-30 10:19:19 +02:00
special.h
sync-check.sh objtool: Move kernel headers/code sync check to a script 2017-12-29 17:53:42 +01:00
warn.h objtool: Implement stack validation 2.0 2017-06-30 10:19:19 +02:00