From: Stephen Rothwell <s...@canb.auug.org.au> Date: Thu, 20 Aug 2015 12:57:34 +1000
> After merging the net-next tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > net/ipv4/fib_semantics.c: In function 'fib_encap_match': > net/ipv4/fib_semantics.c:553:3: error: implicit declaration of function > 'lwtstate_free' [-Werror=implicit-function-declaration] > lwtstate_free(lwtstate); > ^ > > Caused by commit > > df383e6240ef ("lwtunnel: fix memory leak") > > CONFIG_LWTUNNEL is not set for this build. > > I reverted that commit for today. Ought to already be fixed by: ==================== From 824e7383e92815cb591793c74cc836aa5165f7f8 Mon Sep 17 00:00:00 2001 From: Ying Xue <ying....@windriver.com> Date: Wed, 19 Aug 2015 15:46:17 +0800 Subject: [PATCH 1/2] lwtunnel: Fix the sparse warnings in fib_encap_match MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When CONFIG_LWTUNNEL config is not enabled, the lwtstate_free() is not declared in lwtunnel.h at all. However, even in this case, the function is still referenced in fib_semantics.c so that there appears the following sparse warnings: net/ipv4/fib_semantics.c:553:17: error: undefined identifier 'lwtstate_free' CC net/ipv4/fib_semantics.o net/ipv4/fib_semantics.c: In function ‘fib_encap_match’: net/ipv4/fib_semantics.c:553:3: error: implicit declaration of function ‘lwtstate_free’ [-Werror=implicit-function-declaration] cc1: some warnings being treated as errors make[1]: *** [net/ipv4/fib_semantics.o] Error 1 make: *** [net/ipv4/fib_semantics.o] Error 2 To eliminate the error, we define an empty function for lwtstate_free() in lwtunnel.h when CONFIG_LWTUNNEL is disabled. Fixes: df383e6240ef ("lwtunnel: fix memory leak") Cc: Jiri Benc <jb...@redhat.com> Reported-by: kbuild test robot <fengguang...@intel.com> Signed-off-by: Ying Xue <ying....@windriver.com> Acked-by: Jiri Benc <jb...@redhat.com> Signed-off-by: David S. Miller <da...@davemloft.net> --- include/net/lwtunnel.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/include/net/lwtunnel.h b/include/net/lwtunnel.h index 34fd8f7..cfee539 100644 --- a/include/net/lwtunnel.h +++ b/include/net/lwtunnel.h @@ -93,6 +93,10 @@ int lwtunnel_input6(struct sk_buff *skb); #else +static inline void lwtstate_free(struct lwtunnel_state *lws) +{ +} + static inline struct lwtunnel_state * lwtstate_get(struct lwtunnel_state *lws) { -- 2.1.0