Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

objtool: Ignore unwind hints for ignored functions

If a function is ignored, also ignore its hints. This is useful for the
case where the function ignore is conditional on frame pointers, e.g.
STACK_FRAME_NON_STANDARD_FP().

Link: https://lkml.kernel.org/r/163163048317.489837.10988954983369863209.stgit@devnote2

Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Reviewed-by: Masami Hiramatsu <mhiramat@kernel.org>
Tested-by: Masami Hiramatsu <mhiramat@kernel.org>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>

authored by

Josh Poimboeuf and committed by
Steven Rostedt (VMware)
5b284b19 e028c4f7

+1 -1
+1 -1
tools/objtool/check.c
··· 2909 2909 } 2910 2910 2911 2911 while (&insn->list != &file->insn_list && (!sec || insn->sec == sec)) { 2912 - if (insn->hint && !insn->visited) { 2912 + if (insn->hint && !insn->visited && !insn->ignore) { 2913 2913 ret = validate_branch(file, insn->func, insn, state); 2914 2914 if (ret && backtrace) 2915 2915 BT_FUNC("<=== (hint)", insn);