diff options
Diffstat (limited to 'tools/objtool/check.c')
| -rw-r--r-- | tools/objtool/check.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/tools/objtool/check.c b/tools/objtool/check.c index 9b11cf3193b9..e3604b1201f9 100644 --- a/tools/objtool/check.c +++ b/tools/objtool/check.c @@ -3677,18 +3677,23 @@ static int checksum_debug_init(struct objtool_file *file) s = dup; while (*s) { - struct symbol *func; + bool found = false; + struct symbol *sym; char *comma; comma = strchr(s, ','); if (comma) *comma = '\0'; - func = find_symbol_by_name(file->elf, s); - if (!func || !is_func_sym(func)) + for_each_sym_by_name(file->elf, s, sym) { + if (!is_func_sym(sym)) + continue; + sym->debug_checksum = 1; + found = true; + } + + if (!found) WARN("--debug-checksum: can't find '%s'", s); - else - func->debug_checksum = 1; if (!comma) break; |
