[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202501021940.ecvmrJJb-lkp@intel.com>
Date: Thu, 2 Jan 2025 20:12:09 +0800
From: kernel test robot <lkp@...el.com>
To: shiming cheng <shiming.cheng@...iatek.com>,
willemdebruijn.kernel@...il.com, davem@...emloft.net,
dsahern@...nel.org, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, horms@...nel.org, matthias.bgg@...il.com,
angelogioacchino.delregno@...labora.com,
linux-kernel@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-mediatek@...ts.infradead.org
Cc: oe-kbuild-all@...ts.linux.dev, netdev@...r.kernel.org,
lena.wang@...iatek.com, shiming cheng <shiming.cheng@...iatek.com>
Subject: Re: [PATCH] ipv6: socket SO_BINDTODEVICE lookup routing fail
without IPv6 rule.
Hi shiming,
kernel test robot noticed the following build warnings:
[auto build test WARNING on net-next/main]
[also build test WARNING on net/main linus/master v6.13-rc5 next-20241220]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/shiming-cheng/ipv6-socket-SO_BINDTODEVICE-lookup-routing-fail-without-IPv6-rule/20250102-174939
base: net-next/main
patch link: https://lore.kernel.org/r/20250102095114.25860-1-shiming.cheng%40mediatek.com
patch subject: [PATCH] ipv6: socket SO_BINDTODEVICE lookup routing fail without IPv6 rule.
config: x86_64-defconfig (https://download.01.org/0day-ci/archive/20250102/202501021940.ecvmrJJb-lkp@intel.com/config)
compiler: gcc-11 (Debian 11.3.0-12) 11.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250102/202501021940.ecvmrJJb-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202501021940.ecvmrJJb-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:18,
from net/ipv6/ip6_output.c:26:
net/ipv6/ip6_output.c:1307:19: error: non-static declaration of 'ip6_sk_dst_lookup_flow' follows static declaration
1307 | EXPORT_SYMBOL_GPL(ip6_sk_dst_lookup_flow);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/export.h:56:28: note: in definition of macro '__EXPORT_SYMBOL'
56 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:69:41: note: in expansion of macro '_EXPORT_SYMBOL'
69 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "GPL")
| ^~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1307:1: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
1307 | EXPORT_SYMBOL_GPL(ip6_sk_dst_lookup_flow);
| ^~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1291:19: note: previous definition of 'ip6_sk_dst_lookup_flow' with type 'struct dst_entry *(struct sock *, struct flowi6 *, const struct in6_addr *, bool)' {aka 'struct dst_entry *(struct sock *, struct flowi6 *, const struct in6_addr *, _Bool)'}
1291 | struct dst_entry *ip6_sk_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
| ^~~~~~~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1309:36: error: invalid storage class for function 'ip6_opt_dup'
1309 | static inline struct ipv6_opt_hdr *ip6_opt_dup(struct ipv6_opt_hdr *src,
| ^~~~~~~~~~~
net/ipv6/ip6_output.c:1315:35: error: invalid storage class for function 'ip6_rthdr_dup'
1315 | static inline struct ipv6_rt_hdr *ip6_rthdr_dup(struct ipv6_rt_hdr *src,
| ^~~~~~~~~~~~~
net/ipv6/ip6_output.c:1321:13: error: invalid storage class for function 'ip6_append_data_mtu'
1321 | static void ip6_append_data_mtu(unsigned int *mtu,
| ^~~~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1345:12: error: invalid storage class for function 'ip6_setup_cork'
1345 | static int ip6_setup_cork(struct sock *sk, struct inet_cork_full *cork,
| ^~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1420:12: error: invalid storage class for function '__ip6_append_data'
1420 | static int __ip6_append_data(struct sock *sk,
| ^~~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:18,
from net/ipv6/ip6_output.c:26:
net/ipv6/ip6_output.c:1864:19: error: non-static declaration of 'ip6_append_data' follows static declaration
1864 | EXPORT_SYMBOL_GPL(ip6_append_data);
| ^~~~~~~~~~~~~~~
include/linux/export.h:56:28: note: in definition of macro '__EXPORT_SYMBOL'
56 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:69:41: note: in expansion of macro '_EXPORT_SYMBOL'
69 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "GPL")
| ^~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1864:1: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
1864 | EXPORT_SYMBOL_GPL(ip6_append_data);
| ^~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1828:5: note: previous definition of 'ip6_append_data' with type 'int(struct sock *, int (*)(void *, char *, int, int, int, struct sk_buff *), void *, size_t, int, struct ipcm6_cookie *, struct flowi6 *, struct rt6_info *, unsigned int)' {aka 'int(struct sock *, int (*)(void *, char *, int, int, int, struct sk_buff *), void *, long unsigned int, int, struct ipcm6_cookie *, struct flowi6 *, struct rt6_info *, unsigned int)'}
1828 | int ip6_append_data(struct sock *sk,
| ^~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1866:13: error: invalid storage class for function 'ip6_cork_steal_dst'
1866 | static void ip6_cork_steal_dst(struct sk_buff *skb, struct inet_cork_full *cork)
| ^~~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1874:13: error: invalid storage class for function 'ip6_cork_release'
1874 | static void ip6_cork_release(struct inet_cork_full *cork,
| ^~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:18,
from net/ipv6/ip6_output.c:26:
net/ipv6/ip6_output.c:2007:19: error: non-static declaration of 'ip6_push_pending_frames' follows static declaration
2007 | EXPORT_SYMBOL_GPL(ip6_push_pending_frames);
| ^~~~~~~~~~~~~~~~~~~~~~~
include/linux/export.h:56:28: note: in definition of macro '__EXPORT_SYMBOL'
56 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:69:41: note: in expansion of macro '_EXPORT_SYMBOL'
69 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "GPL")
| ^~~~~~~~~~~~~~
net/ipv6/ip6_output.c:2007:1: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
2007 | EXPORT_SYMBOL_GPL(ip6_push_pending_frames);
| ^~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:1997:5: note: previous definition of 'ip6_push_pending_frames' with type 'int(struct sock *)'
1997 | int ip6_push_pending_frames(struct sock *sk)
| ^~~~~~~~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:2009:13: error: invalid storage class for function '__ip6_flush_pending_frames'
2009 | static void __ip6_flush_pending_frames(struct sock *sk,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:18,
from net/ipv6/ip6_output.c:26:
net/ipv6/ip6_output.c:2031:19: error: non-static declaration of 'ip6_flush_pending_frames' follows static declaration
2031 | EXPORT_SYMBOL_GPL(ip6_flush_pending_frames);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/export.h:56:28: note: in definition of macro '__EXPORT_SYMBOL'
56 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:69:41: note: in expansion of macro '_EXPORT_SYMBOL'
69 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "GPL")
| ^~~~~~~~~~~~~~
net/ipv6/ip6_output.c:2031:1: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
2031 | EXPORT_SYMBOL_GPL(ip6_flush_pending_frames);
| ^~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:2026:6: note: previous definition of 'ip6_flush_pending_frames' with type 'void(struct sock *)'
2026 | void ip6_flush_pending_frames(struct sock *sk)
| ^~~~~~~~~~~~~~~~~~~~~~~~
net/ipv6/ip6_output.c:2074:1: error: expected declaration or statement at end of input
2074 | }
| ^
At top level:
>> net/ipv6/ip6_output.c:2033:17: warning: 'ip6_make_skb' defined but not used [-Wunused-function]
2033 | struct sk_buff *ip6_make_skb(struct sock *sk,
| ^~~~~~~~~~~~
vim +/ip6_make_skb +2033 net/ipv6/ip6_output.c
0bbe84a67b0b54 Vlad Yasevich 2015-01-31 2025
0bbe84a67b0b54 Vlad Yasevich 2015-01-31 @2026 void ip6_flush_pending_frames(struct sock *sk)
0bbe84a67b0b54 Vlad Yasevich 2015-01-31 2027 {
6422398c2ab092 Vlad Yasevich 2015-01-31 2028 __ip6_flush_pending_frames(sk, &sk->sk_write_queue,
6422398c2ab092 Vlad Yasevich 2015-01-31 2029 &inet_sk(sk)->cork, &inet6_sk(sk)->cork);
0bbe84a67b0b54 Vlad Yasevich 2015-01-31 2030 }
a495f8364efe11 Chris Elston 2012-04-29 2031 EXPORT_SYMBOL_GPL(ip6_flush_pending_frames);
6422398c2ab092 Vlad Yasevich 2015-01-31 2032
6422398c2ab092 Vlad Yasevich 2015-01-31 @2033 struct sk_buff *ip6_make_skb(struct sock *sk,
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists