All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Kuniyuki Iwashima <kuniyu@amazon.com>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
	David Ahern <dsahern@kernel.org>,
	Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Andrii Nakryiko <andrii@kernel.org>,
	Martin KaFai Lau <martin.lau@linux.dev>,
	Song Liu <song@kernel.org>,
	Yonghong Song <yonghong.song@linux.dev>,
	John Fastabend <john.fastabend@gmail.com>,
	KP Singh <kpsingh@kernel.org>,
	Stanislav Fomichev <sdf@google.com>, Hao Luo <haoluo@google.com>,
	Jiri Olsa <jolsa@kernel.org>, Mykola Lysenko <mykolal@fb.com>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	netdev@vger.kernel.org, Kuniyuki Iwashima <kuniyu@amazon.com>,
	bpf@vger.kernel.org
Subject: Re: [PATCH v2 bpf-next 10/11] bpf: tcp: Support arbitrary SYN Cookie.
Date: Tue, 21 Nov 2023 13:17:40 +0800	[thread overview]
Message-ID: <202311211310.E8pJEsnT-lkp@intel.com> (raw)
In-Reply-To: <20231120222341.54776-11-kuniyu@amazon.com>

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@intel.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

  parent reply	other threads:[~2023-11-21  5:21 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-20 22:23 [PATCH v2 bpf-next 00/11] bpf: tcp: Support arbitrary SYN Cookie at TC Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 01/11] tcp: Clean up reverse xmas tree in cookie_v[46]_check() Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 02/11] tcp: Cache sock_net(sk) " Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 03/11] tcp: Clean up goto labels " Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 04/11] tcp: Don't pass cookie to __cookie_v[46]_check() Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 05/11] tcp: Don't initialise tp->tsoffset in tcp_get_cookie_sock() Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 06/11] tcp: Move TCP-AO bits from cookie_v[46]_check() to tcp_ao_syncookie() Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 07/11] tcp: Factorise cookie req initialisation Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 08/11] tcp: Factorise non-BPF SYN Cookie handling Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 09/11] bpf: tcp: Handle BPF SYN Cookie in cookie_v[46]_check() Kuniyuki Iwashima
2023-11-20 22:23 ` [PATCH v2 bpf-next 10/11] bpf: tcp: Support arbitrary SYN Cookie Kuniyuki Iwashima
2023-11-21  5:06   ` kernel test robot
2023-11-21  5:18     ` Kuniyuki Iwashima
2023-11-21  5:17   ` kernel test robot [this message]
2023-11-21  5:37     ` Kuniyuki Iwashima
2023-11-21  5:21   ` kernel test robot
2023-11-20 22:23 ` [PATCH v2 bpf-next 11/11] selftest: bpf: Test bpf_sk_assign_tcp_reqsk() Kuniyuki Iwashima

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202311211310.E8pJEsnT-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=dsahern@kernel.org \
    --cc=edumazet@google.com \
    --cc=haoluo@google.com \
    --cc=john.fastabend@gmail.com \
    --cc=jolsa@kernel.org \
    --cc=kpsingh@kernel.org \
    --cc=kuba@kernel.org \
    --cc=kuniyu@amazon.com \
    --cc=llvm@lists.linux.dev \
    --cc=martin.lau@linux.dev \
    --cc=mykolal@fb.com \
    --cc=netdev@vger.kernel.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=pabeni@redhat.com \
    --cc=sdf@google.com \
    --cc=song@kernel.org \
    --cc=yonghong.song@linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.