]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
objtool: Fix verbose disassembly if CROSS_COMPILE isn't set
authorDavid Laight <david.laight.linux@gmail.com>
Tue, 1 Apr 2025 04:26:42 +0000 (21:26 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 10 Apr 2025 12:37:36 +0000 (14:37 +0200)
[ Upstream commit e77956e4e5c11218e60a1fe8cdbccd02476f2e56 ]

In verbose mode, when printing the disassembly of affected functions, if
CROSS_COMPILE isn't set, the objdump command string gets prefixed with
"(null)".

Somehow this worked before.  Maybe some versions of glibc return an
empty string instead of NULL.  Fix it regardless.

[ jpoimboe: Rewrite commit log. ]

Fixes: ca653464dd097 ("objtool: Add verbose option for disassembling affected functions")
Signed-off-by: David Laight <david.laight.linux@gmail.com>
Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Link: https://lore.kernel.org/r/20250215142321.14081-1-david.laight.linux@gmail.com
Link: https://lore.kernel.org/r/b931a4786bc0127aa4c94e8b35ed617dcbd3d3da.1743481539.git.jpoimboe@kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
tools/objtool/check.c

index 36412f1881e61c1c8fba3e2238ce91255d4ec5a6..9102ad5985cc0f947683cbce96b752bac91d6b73 100644 (file)
@@ -4550,6 +4550,8 @@ static int disas_funcs(const char *funcs)
        char *cmd;
 
        cross_compile = getenv("CROSS_COMPILE");
+       if (!cross_compile)
+               cross_compile = "";
 
        objdump_str = "%sobjdump -wdr %s | gawk -M -v _funcs='%s' '"
                        "BEGIN { split(_funcs, funcs); }"