Le 29/08/2022 à 07:52, Sathvika Vasireddy a écrit : > Add architecture specific function to look for > relocation records pointing to arch specific > symbols. > > Suggested-by: Christophe Leroy <christophe.le...@csgroup.eu> > Signed-off-by: Sathvika Vasireddy <s...@linux.ibm.com>
Reviewed-by: Christophe Leroy <christophe.le...@csgroup.eu> > --- > tools/objtool/arch/x86/decode.c | 8 ++++++++ > tools/objtool/check.c | 2 +- > tools/objtool/include/objtool/arch.h | 2 ++ > 3 files changed, 11 insertions(+), 1 deletion(-) > > diff --git a/tools/objtool/arch/x86/decode.c b/tools/objtool/arch/x86/decode.c > index c260006106be..025598b6b703 100644 > --- a/tools/objtool/arch/x86/decode.c > +++ b/tools/objtool/arch/x86/decode.c > @@ -23,6 +23,14 @@ > #include <objtool/builtin.h> > #include <arch/elf.h> > > +bool arch_ftrace_match(char *name) > +{ > + if (!strcmp(name, "__fentry__")) > + return true; > + > + return false; Could be simplified as: return !strcmp(name, "__fentry__"); Whatever: Reviewed-by: Christophe Leroy <christophe.le...@csgroup.eu> > +} > + > static int is_x86_64(const struct elf *elf) > { > switch (elf->ehdr.e_machine) { > diff --git a/tools/objtool/check.c b/tools/objtool/check.c > index f1d055467926..01ff7504f18d 100644 > --- a/tools/objtool/check.c > +++ b/tools/objtool/check.c > @@ -2294,7 +2294,7 @@ static int classify_symbols(struct objtool_file *file) > if (arch_is_rethunk(func)) > func->return_thunk = true; > > - if (!strcmp(func->name, "__fentry__")) > + if (arch_ftrace_match(func->name)) > func->fentry = true; > > if (is_profiling_func(func->name)) > diff --git a/tools/objtool/include/objtool/arch.h > b/tools/objtool/include/objtool/arch.h > index beb2f3aa94ff..2ba4b9897285 100644 > --- a/tools/objtool/include/objtool/arch.h > +++ b/tools/objtool/include/objtool/arch.h > @@ -69,6 +69,8 @@ struct stack_op { > > struct instruction; > > +bool arch_ftrace_match(char *name); > + > void arch_initial_func_cfi_state(struct cfi_init_state *state); > > int arch_decode_instruction(struct objtool_file *file, const struct section > *sec,