diff options
author | Josh Poimboeuf <jpoimboe@redhat.com> | 2019-07-17 20:36:49 -0500 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2019-07-18 21:01:07 +0200 |
commit | 61e9b75a0ccf1fecacc28a2d77ea4a19aa404e39 (patch) | |
tree | bd51bf0c1091f2620f5adb159b194948fa73f433 /tools | |
parent | e10cd8fe8ddfd28a172d2be57ae0e90c7f752e6a (diff) | |
download | linux-61e9b75a0ccf1fecacc28a2d77ea4a19aa404e39.tar.gz linux-61e9b75a0ccf1fecacc28a2d77ea4a19aa404e39.tar.bz2 linux-61e9b75a0ccf1fecacc28a2d77ea4a19aa404e39.zip |
objtool: Warn on zero-length functions
All callable functions should have an ELF size.
Signed-off-by: Josh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/03d429c4fa87829c61c5dc0e89652f4d9efb62f1.1563413318.git.jpoimboe@redhat.com
Diffstat (limited to 'tools')
-rw-r--r-- | tools/objtool/check.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/tools/objtool/check.c b/tools/objtool/check.c index 3f8664b0e3f9..dece3253ff6a 100644 --- a/tools/objtool/check.c +++ b/tools/objtool/check.c @@ -2357,6 +2357,12 @@ static int validate_functions(struct objtool_file *file) if (func->type != STT_FUNC) continue; + if (!func->len) { + WARN("%s() is missing an ELF size annotation", + func->name); + warnings++; + } + if (func->pfunc != func || func->alias != func) continue; |