[lkml]   [2018]   [Oct]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[PATCH] kbuild: fix kernel/bounds.c 'W=1' warning
Building any configuration with 'make W=1' produces a warning:

kernel/bounds.c:16:6: warnign: no previous prototype for 'foo' [-Wmissing-prototypes]

When also passing -Werror, this prevents us from building any
other files. Nobody ever calls the function, but we can't make
it 'static' either since we want the compiler output.

Calling it 'main' instead however avoids the warning, because gcc
does not insist on having a declaration for main.

Reported-by: Kieran Bingham <>
Signed-off-by: Arnd Bergmann <>
I have run into this problem several times before, and thought I had
sent a fix at some point. Looking in the archives, I came across
the suggested fix from Kieran, so I'm following up on that here.
kernel/bounds.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/kernel/bounds.c b/kernel/bounds.c
index c373e887c066..9795d75b09b2 100644
--- a/kernel/bounds.c
+++ b/kernel/bounds.c
@@ -13,7 +13,7 @@
#include <linux/log2.h>
#include <linux/spinlock_types.h>

-void foo(void)
+int main(void)
/* The enum constants to put into include/generated/bounds.h */
@@ -23,4 +23,6 @@ void foo(void)
DEFINE(SPINLOCK_SIZE, sizeof(spinlock_t));
/* End of constants */
+ return 0;
 \ /
  Last update: 2018-10-05 10:35    [W:0.150 / U:0.288 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site