[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c7d549d4de8bd1490d106b99630eea5efc69a4dd.1763669451.git.jpoimboe@kernel.org>
Date: Thu, 20 Nov 2025 12:14:21 -0800
From: Josh Poimboeuf <jpoimboe@...nel.org>
To: x86@...nel.org
Cc: linux-kernel@...r.kernel.org,
Peter Zijlstra <peterz@...radead.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Jiri Slaby <jirislaby@...nel.org>,
Mauro Carvalho Chehab <mchehab@...nel.org>,
Hans de Goede <hansg@...nel.org>
Subject: [PATCH 6/6] Revert "objtool: Warn on functions with ambiguous -ffunction-sections section names"
This reverts commit 9c7dc1dd897a1cdcade9566ea4664b03fbabf4a4.
The check-function-names.sh script now provides the function name
checking functionality for all architectures, making the objtool check
redundant.
Signed-off-by: Josh Poimboeuf <jpoimboe@...nel.org>
---
tools/objtool/Documentation/objtool.txt | 7 ------
tools/objtool/check.c | 33 -------------------------
2 files changed, 40 deletions(-)
diff --git a/tools/objtool/Documentation/objtool.txt b/tools/objtool/Documentation/objtool.txt
index f88f8d28513a..9e97fc25b2d8 100644
--- a/tools/objtool/Documentation/objtool.txt
+++ b/tools/objtool/Documentation/objtool.txt
@@ -456,13 +456,6 @@ the objtool maintainers.
these special names and does not use module_init() / module_exit()
macros to create them.
-13. file.o: warning: func() function name creates ambiguity with -ffunctions-sections
-
- Functions named startup(), exit(), split(), unlikely(), hot(), and
- unknown() are not allowed due to the ambiguity of their section
- names when compiled with -ffunction-sections. For more information,
- see the comment above TEXT_MAIN in include/asm-generic/vmlinux.lds.h.
-
If the error doesn't seem to make sense, it could be a bug in objtool.
Feel free to ask objtool maintainers for help.
diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index 72c7f6f03350..57fac6ce3454 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -2663,37 +2663,6 @@ static int decode_sections(struct objtool_file *file)
return 0;
}
-/*
- * Certain function names are disallowed due to section name ambiguities
- * introduced by -ffunction-sections.
- *
- * See the comment above TEXT_MAIN in include/asm-generic/vmlinux.lds.h.
- */
-static int validate_function_names(struct objtool_file *file)
-{
- struct symbol *func;
- int warnings = 0;
-
- for_each_sym(file->elf, func) {
- if (!is_func_sym(func))
- continue;
-
- if (!strcmp(func->name, "startup") || strstarts(func->name, "startup.") ||
- !strcmp(func->name, "exit") || strstarts(func->name, "exit.") ||
- !strcmp(func->name, "split") || strstarts(func->name, "split.") ||
- !strcmp(func->name, "unlikely") || strstarts(func->name, "unlikely.") ||
- !strcmp(func->name, "hot") || strstarts(func->name, "hot.") ||
- !strcmp(func->name, "unknown") || strstarts(func->name, "unknown.")) {
-
- WARN("%s() function name creates ambiguity with -ffunction-sections",
- func->name);
- warnings++;
- }
- }
-
- return warnings;
-}
-
static bool is_special_call(struct instruction *insn)
{
if (insn->type == INSN_CALL) {
@@ -4963,8 +4932,6 @@ int check(struct objtool_file *file)
if (!nr_insns)
goto out;
- warnings += validate_function_names(file);
-
if (opts.retpoline)
warnings += validate_retpoline(file);
--
2.51.1
Powered by blists - more mailing lists