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: 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:21:15 +0800	[thread overview]
Message-ID: <202311211344.cgnPKNbc-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: um-i386_defconfig (https://download.01.org/0day-ci/archive/20231121/202311211344.cgnPKNbc-lkp@intel.com/config)
compiler: gcc-7 (Ubuntu 7.5.0-6ubuntu2) 7.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231121/202311211344.cgnPKNbc-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/202311211344.cgnPKNbc-lkp@intel.com/

All errors (new ones prefixed by >>):

   net/core/filter.c:11812:13: warning: 'struct tcp_cookie_attributes' declared inside parameter list will not be visible outside of this definition or declaration
         struct tcp_cookie_attributes *attr,
                ^~~~~~~~~~~~~~~~~~~~~
   net/core/filter.c: In function 'bpf_sk_assign_tcp_reqsk':
>> net/core/filter.c:11821:25: error: dereferencing pointer to incomplete type 'struct tcp_cookie_attributes'
     if (attr__sz != sizeof(*attr))
                            ^~~~~


vim +11821 net/core/filter.c

 11810	
 11811	__bpf_kfunc int bpf_sk_assign_tcp_reqsk(struct sk_buff *skb, struct sock *sk,
 11812						struct tcp_cookie_attributes *attr,
 11813						int attr__sz)
 11814	{
 11815		const struct request_sock_ops *ops;
 11816		struct inet_request_sock *ireq;
 11817		struct tcp_request_sock *treq;
 11818		struct request_sock *req;
 11819		__u16 min_mss;
 11820	
 11821		if (attr__sz != sizeof(*attr))
 11822			return -EINVAL;
 11823	
 11824		if (!sk)
 11825			return -EINVAL;
 11826	
 11827		if (!skb_at_tc_ingress(skb))
 11828			return -EINVAL;
 11829	
 11830		if (dev_net(skb->dev) != sock_net(sk))
 11831			return -ENETUNREACH;
 11832	
 11833		switch (skb->protocol) {
 11834		case htons(ETH_P_IP):
 11835			ops = &tcp_request_sock_ops;
 11836			min_mss = 536;
 11837			break;
 11838	#if IS_BUILTIN(CONFIG_IPV6)
 11839		case htons(ETH_P_IPV6):
 11840			ops = &tcp6_request_sock_ops;
 11841			min_mss = IPV6_MIN_MTU - 60;
 11842			break;
 11843	#endif
 11844		default:
 11845			return -EINVAL;
 11846		}
 11847	
 11848		if (sk->sk_type != SOCK_STREAM || sk->sk_state != TCP_LISTEN)
 11849			return -EINVAL;
 11850	
 11851		if (attr->tcp_opt.mss_clamp < min_mss) {
 11852			__NET_INC_STATS(sock_net(sk), LINUX_MIB_SYNCOOKIESFAILED);
 11853			return -EINVAL;
 11854		}
 11855	
 11856		if (attr->tcp_opt.wscale_ok &&
 11857		    attr->tcp_opt.snd_wscale > TCP_MAX_WSCALE) {
 11858			__NET_INC_STATS(sock_net(sk), LINUX_MIB_SYNCOOKIESFAILED);
 11859			return -EINVAL;
 11860		}
 11861	
 11862		if (sk_is_mptcp(sk))
 11863			req = mptcp_subflow_reqsk_alloc(ops, sk, false);
 11864		else
 11865			req = inet_reqsk_alloc(ops, sk, false);
 11866	
 11867		if (!req)
 11868			return -ENOMEM;
 11869	
 11870		ireq = inet_rsk(req);
 11871		treq = tcp_rsk(req);
 11872	
 11873		req->syncookie = 1;
 11874		req->rsk_listener = sk;
 11875		req->mss = attr->tcp_opt.mss_clamp;
 11876	
 11877		ireq->snd_wscale = attr->tcp_opt.snd_wscale;
 11878		ireq->wscale_ok = attr->tcp_opt.wscale_ok;
 11879		ireq->tstamp_ok	= attr->tcp_opt.tstamp_ok;
 11880		ireq->sack_ok = attr->tcp_opt.sack_ok;
 11881		ireq->ecn_ok = attr->ecn_ok;
 11882	
 11883		treq->req_usec_ts = attr->usec_ts_ok;
 11884	
 11885		skb_orphan(skb);
 11886		skb->sk = req_to_sk(req);
 11887		skb->destructor = sock_pfree;
 11888	
 11889		return 0;
 11890	}
 11891	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

  parent reply	other threads:[~2023-11-21  5:23 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
2023-11-21  5:37     ` Kuniyuki Iwashima
2023-11-21  5:21   ` kernel test robot [this message]
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=202311211344.cgnPKNbc-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=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.