Hi Leonard,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on 2a2b6e3640c43a808dcb5226963e2cc0669294b1]
url:
https://github.com/0day-ci/linux/commits/Leonard-Crestez/tcp-Initial-supp...
base: 2a2b6e3640c43a808dcb5226963e2cc0669294b1
config: riscv-allyesconfig (attached as .config)
compiler: riscv64-linux-gcc (GCC) 10.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
#
https://github.com/0day-ci/linux/commit/262249e896df425f9daf2437bdd09b46a...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Leonard-Crestez/tcp-Initial-support-for-RFC5925-auth-option/20210810-053824
git checkout 262249e896df425f9daf2437bdd09b46a30516b2
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross ARCH=riscv
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
net/ipv4/tcp_authopt.c:160:30: warning: no previous prototype for
'__tcp_authopt_key_info_lookup' [-Wmissing-prototypes]
160 | struct tcp_authopt_key_info *__tcp_authopt_key_info_lookup(const struct sock
*sk,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> net/ipv4/tcp_authopt.c:173:30: warning: no previous prototype for
'tcp_authopt_lookup_send' [-Wmissing-prototypes]
173 | struct
tcp_authopt_key_info *tcp_authopt_lookup_send(struct tcp_authopt_info *info,
| ^~~~~~~~~~~~~~~~~~~~~~~
net/ipv4/tcp_authopt.c: In function 'tcp_set_authopt':
net/ipv4/tcp_authopt.c:267:62: error: expected ';' before ')' token
267 | info->flags = opt.flags & TCP_AUTHOPT_FLAG_REJECT_UNEXPECTED);
| ^
| ;
net/ipv4/tcp_authopt.c:267:62: error: expected statement before ')' token
net/ipv4/tcp_authopt.c: At top level:
net/ipv4/tcp_authopt.c:305:6: warning: no previous prototype for
'__tcp_authopt_info_free' [-Wmissing-prototypes]
305 | void __tcp_authopt_info_free(struct sock *sk, struct tcp_authopt_info *info)
| ^~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rbtree.h:22,
from include/linux/mm_types.h:10,
from include/linux/mmzone.h:21,
from include/linux/gfp.h:6,
from include/linux/mm.h:10,
from include/linux/bvec.h:14,
from include/linux/skbuff.h:17,
from include/linux/tcp.h:17,
from include/net/tcp.h:20,
from net/ipv4/tcp_authopt.c:4:
net/ipv4/tcp_authopt.c: In function 'tcp_authopt_clone_keys':
net/ipv4/tcp_authopt.c:412:80: error: 'sk' undeclared (first use in this
function); did you mean 's8'?
412 | hlist_for_each_entry_rcu(old_key, &old_info->head, node,
lockdep_sock_is_held(sk)) {
|
^~
include/linux/rcupdate.h:318:8: note: in definition of macro
'RCU_LOCKDEP_WARN'
318 | if ((c) && debug_lockdep_rcu_enabled() && !__warned) { \
| ^
include/linux/rculist.h:706:7: note: in expansion of macro '__list_check_rcu'
706 | for (__list_check_rcu(dummy, ## cond, 0), \
| ^~~~~~~~~~~~~~~~
net/ipv4/tcp_authopt.c:412:2: note: in expansion of macro
'hlist_for_each_entry_rcu'
412 | hlist_for_each_entry_rcu(old_key, &old_info->head, node,
lockdep_sock_is_held(sk)) {
| ^~~~~~~~~~~~~~~~~~~~~~~~
net/ipv4/tcp_authopt.c:412:80: note: each undeclared identifier is reported only once
for each function it appears in
412 | hlist_for_each_entry_rcu(old_key, &old_info->head, node,
lockdep_sock_is_held(sk)) {
|
^~
include/linux/rcupdate.h:318:8: note: in definition of macro
'RCU_LOCKDEP_WARN'
318 | if ((c) && debug_lockdep_rcu_enabled() && !__warned) { \
| ^
include/linux/rculist.h:706:7: note: in expansion of macro '__list_check_rcu'
706 | for (__list_check_rcu(dummy, ## cond, 0), \
| ^~~~~~~~~~~~~~~~
net/ipv4/tcp_authopt.c:412:2: note: in expansion of macro
'hlist_for_each_entry_rcu'
412 | hlist_for_each_entry_rcu(old_key, &old_info->head, node,
lockdep_sock_is_held(sk)) {
| ^~~~~~~~~~~~~~~~~~~~~~~~
net/ipv4/tcp_authopt.c: In function 'tcp_authopt_shash_traffic_key':
net/ipv4/tcp_authopt.c:486:21: warning: variable 'daddr' set but not used
[-Wunused-but-set-variable]
486 | struct in6_addr *daddr;
| ^~~~~
net/ipv4/tcp_authopt.c:485:21: warning: variable 'saddr' set but not used
[-Wunused-but-set-variable]
485 | struct in6_addr *saddr;
| ^~~~~
net/ipv4/tcp_authopt.c: At top level:
net/ipv4/tcp_authopt.c:878:5: warning: no previous prototype for
'__tcp_authopt_calc_mac' [-Wmissing-prototypes]
878 | int __tcp_authopt_calc_mac(struct sock *sk,
| ^~~~~~~~~~~~~~~~~~~~~~
vim +/tcp_authopt_lookup_send +173 net/ipv4/tcp_authopt.c
172
173 struct tcp_authopt_key_info *tcp_authopt_lookup_send(struct
tcp_authopt_info *info,
174 const struct sock *addr_sk,
175 int send_id)
176 {
177 struct tcp_authopt_key_info *result = NULL;
178 struct tcp_authopt_key_info *key;
179
180 hlist_for_each_entry_rcu(key, &info->head, node, 0) {
181 if (send_id >= 0 && key->send_id != send_id)
182 continue;
183 if (key->flags & TCP_AUTHOPT_KEY_ADDR_BIND) {
184 if (addr_sk->sk_family == AF_INET) {
185 struct sockaddr_in *key_addr = (struct sockaddr_in *)&key->addr;
186 const struct in_addr *daddr =
187 (const struct in_addr *)&addr_sk->sk_daddr;
188
189 if (WARN_ON(key_addr->sin_family != AF_INET))
190 continue;
191 if (memcmp(daddr, &key_addr->sin_addr, sizeof(*daddr)))
192 continue;
193 }
194 if (addr_sk->sk_family == AF_INET6) {
195 struct sockaddr_in6 *key_addr = (struct sockaddr_in6 *)&key->addr;
196 const struct in6_addr *daddr = &addr_sk->sk_v6_daddr;
197
198 if (WARN_ON(key_addr->sin6_family != AF_INET6))
199 continue;
200 if (memcmp(daddr, &key_addr->sin6_addr, sizeof(*daddr)))
201 continue;
202 }
203 }
204 if (result && net_ratelimit())
205 pr_warn("ambiguous tcp authentication keys configured for send\n");
206 result = key;
207 }
208
209 return result;
210 }
211
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org