Most of the time objtool warnings are useless without the absolute address within the section.
Today there is --sec-address option to get it printed, but that option is nowhere used and requires a change in Makefile to use it. Having the address inside the section at all time in addition to the address within the object doesn't hurt and will help. Remove the --sec-address option and print it at all time. Signed-off-by: Christophe Leroy <christophe.le...@csgroup.eu> --- tools/objtool/builtin-check.c | 1 - tools/objtool/include/objtool/builtin.h | 1 - tools/objtool/include/objtool/warn.h | 6 ++---- 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/tools/objtool/builtin-check.c b/tools/objtool/builtin-check.c index 7c175198d09f..d5024a95467a 100644 --- a/tools/objtool/builtin-check.c +++ b/tools/objtool/builtin-check.c @@ -91,7 +91,6 @@ static const struct option check_options[] = { OPT_BOOLEAN(0, "module", &opts.module, "object is part of a kernel module"), OPT_BOOLEAN(0, "mnop", &opts.mnop, "nop out mcount call sites"), OPT_BOOLEAN(0, "no-unreachable", &opts.no_unreachable, "skip 'unreachable instruction' warnings"), - OPT_BOOLEAN(0, "sec-address", &opts.sec_address, "print section addresses in warnings"), OPT_BOOLEAN(0, "stats", &opts.stats, "print statistics"), OPT_END(), diff --git a/tools/objtool/include/objtool/builtin.h b/tools/objtool/include/objtool/builtin.h index 2a108e648b7a..af79618cf6ab 100644 --- a/tools/objtool/include/objtool/builtin.h +++ b/tools/objtool/include/objtool/builtin.h @@ -35,7 +35,6 @@ struct opts { bool mnop; bool module; bool no_unreachable; - bool sec_address; bool stats; }; diff --git a/tools/objtool/include/objtool/warn.h b/tools/objtool/include/objtool/warn.h index b1c920dc9516..2db9717d0558 100644 --- a/tools/objtool/include/objtool/warn.h +++ b/tools/objtool/include/objtool/warn.h @@ -21,7 +21,6 @@ static inline char *offstr(struct section *sec, unsigned long offset) bool is_text = (sec->sh.sh_flags & SHF_EXECINSTR); struct symbol *sym = NULL; char *str; - int len; if (is_text) sym = find_func_containing(sec, offset); @@ -30,9 +29,8 @@ static inline char *offstr(struct section *sec, unsigned long offset) if (sym) { str = malloc(strlen(sym->name) + strlen(sec->name) + 40); - len = sprintf(str, "%s+0x%lx", sym->name, offset - sym->offset); - if (opts.sec_address) - sprintf(str+len, " (%s+0x%lx)", sec->name, offset); + sprintf(str, "%s+0x%lx (%s+0x%lx)", sym->name, + offset - sym->offset, sec->name, offset); } else { str = malloc(strlen(sec->name) + 20); sprintf(str, "%s+0x%lx", sec->name, offset); -- 2.40.1