[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202311211310.E8pJEsnT-lkp@intel.com>
Date: Tue, 21 Nov 2023 13:17:40 +0800
From: kernel test robot <lkp@...el.com>
To: Kuniyuki Iwashima <kuniyu@...zon.com>,
"David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>,
Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
David Ahern <dsahern@...nel.org>,
Alexei Starovoitov <ast@...nel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Andrii Nakryiko <andrii@...nel.org>,
Martin KaFai Lau <martin.lau@...ux.dev>, Song Liu <song@...nel.org>,
Yonghong Song <yonghong.song@...ux.dev>,
John Fastabend <john.fastabend@...il.com>,
KP Singh <kpsingh@...nel.org>, Stanislav Fomichev <sdf@...gle.com>,
Hao Luo <haoluo@...gle.com>, Jiri Olsa <jolsa@...nel.org>,
Mykola Lysenko <mykolal@...com>
Cc: llvm@...ts.linux.dev, oe-kbuild-all@...ts.linux.dev,
netdev@...r.kernel.org, Kuniyuki Iwashima <kuniyu@...zon.com>,
bpf@...r.kernel.org
Subject: Re: [PATCH v2 bpf-next 10/11] bpf: tcp: Support arbitrary SYN Cookie.
Hi Kuniyuki,
kernel test robot noticed the following build errors:
[auto build test ERROR on bpf-next/master]
url: https://github.com/intel-lab-lkp/linux/commits/Kuniyuki-Iwashima/tcp-Clean-up-reverse-xmas-tree-in-cookie_v-46-_check/20231121-063036
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
patch link: https://lore.kernel.org/r/20231120222341.54776-11-kuniyu%40amazon.com
patch subject: [PATCH v2 bpf-next 10/11] bpf: tcp: Support arbitrary SYN Cookie.
config: arm-spear3xx_defconfig (https://download.01.org/0day-ci/archive/20231121/202311211310.E8pJEsnT-lkp@intel.com/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231121/202311211310.E8pJEsnT-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/202311211310.E8pJEsnT-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from net/core/sock.c:142:
In file included from include/net/tcp.h:32:
>> include/net/inet_hashtables.h:472:22: error: use of undeclared identifier 'sock_pfree'
skb->destructor = sock_pfree;
^
1 error generated.
--
In file included from net/core/filter.c:39:
In file included from include/linux/skmsg.h:13:
In file included from include/net/tcp.h:32:
>> include/net/inet_hashtables.h:472:22: error: use of undeclared identifier 'sock_pfree'
skb->destructor = sock_pfree;
^
net/core/filter.c:11812:13: warning: declaration of 'struct tcp_cookie_attributes' will not be visible outside of this function [-Wvisibility]
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11821:24: error: invalid application of 'sizeof' to an incomplete type 'struct tcp_cookie_attributes'
if (attr__sz != sizeof(*attr))
^~~~~~~
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11851:10: error: incomplete definition of type 'struct tcp_cookie_attributes'
if (attr->tcp_opt.mss_clamp < min_mss) {
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11856:10: error: incomplete definition of type 'struct tcp_cookie_attributes'
if (attr->tcp_opt.wscale_ok &&
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11857:10: error: incomplete definition of type 'struct tcp_cookie_attributes'
attr->tcp_opt.snd_wscale > TCP_MAX_WSCALE) {
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11875:17: error: incomplete definition of type 'struct tcp_cookie_attributes'
req->mss = attr->tcp_opt.mss_clamp;
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11877:25: error: incomplete definition of type 'struct tcp_cookie_attributes'
ireq->snd_wscale = attr->tcp_opt.snd_wscale;
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11878:24: error: incomplete definition of type 'struct tcp_cookie_attributes'
ireq->wscale_ok = attr->tcp_opt.wscale_ok;
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11879:24: error: incomplete definition of type 'struct tcp_cookie_attributes'
ireq->tstamp_ok = attr->tcp_opt.tstamp_ok;
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11880:22: error: incomplete definition of type 'struct tcp_cookie_attributes'
ireq->sack_ok = attr->tcp_opt.sack_ok;
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11881:21: error: incomplete definition of type 'struct tcp_cookie_attributes'
ireq->ecn_ok = attr->ecn_ok;
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
net/core/filter.c:11883:26: error: incomplete definition of type 'struct tcp_cookie_attributes'
treq->req_usec_ts = attr->usec_ts_ok;
~~~~^
net/core/filter.c:11812:13: note: forward declaration of 'struct tcp_cookie_attributes'
struct tcp_cookie_attributes *attr,
^
>> net/core/filter.c:11887:20: error: use of undeclared identifier 'sock_pfree'
skb->destructor = sock_pfree;
^
1 warning and 13 errors generated.
vim +/sock_pfree +472 include/net/inet_hashtables.h
451
452 static inline
453 struct sock *inet_steal_sock(struct net *net, struct sk_buff *skb, int doff,
454 const __be32 saddr, const __be16 sport,
455 const __be32 daddr, const __be16 dport,
456 bool *refcounted, inet_ehashfn_t *ehashfn)
457 {
458 struct sock *sk, *reuse_sk;
459 bool prefetched;
460
461 sk = skb_steal_sock(skb, refcounted, &prefetched);
462 if (!sk)
463 return NULL;
464
465 if (!prefetched)
466 return sk;
467
468 if (sk->sk_state == TCP_NEW_SYN_RECV) {
469 if (inet_reqsk(sk)->syncookie) {
470 *refcounted = false;
471 skb->sk = sk;
> 472 skb->destructor = sock_pfree;
473 return inet_reqsk(sk)->rsk_listener;
474 }
475 return sk;
476 } else if (sk->sk_state == TCP_TIME_WAIT) {
477 return sk;
478 }
479
480 if (sk->sk_protocol == IPPROTO_TCP) {
481 if (sk->sk_state != TCP_LISTEN)
482 return sk;
483 } else if (sk->sk_protocol == IPPROTO_UDP) {
484 if (sk->sk_state != TCP_CLOSE)
485 return sk;
486 } else {
487 return sk;
488 }
489
490 reuse_sk = inet_lookup_reuseport(net, sk, skb, doff,
491 saddr, sport, daddr, ntohs(dport),
492 ehashfn);
493 if (!reuse_sk)
494 return sk;
495
496 /* We've chosen a new reuseport sock which is never refcounted. This
497 * implies that sk also isn't refcounted.
498 */
499 WARN_ON_ONCE(*refcounted);
500
501 return reuse_sk;
502 }
503
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
Powered by blists - more mailing lists