Hi Andrii,
I love your patch! Yet something to improve:
[auto build test ERROR on bpf-next/master]
url:
https://github.com/0day-ci/linux/commits/Andrii-Nakryiko/BPF-XDP-link/202...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git master
config: x86_64-defconfig (attached as .config)
compiler: clang version 11.0.0 (
https://github.com/llvm/llvm-project
02946de3802d3bc65bc9f2eb9b8d4969b5a7add8)
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
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
> net/core/dev.c:8717:18: error: field has incomplete type
'struct bpf_link'
struct bpf_link link;
^
include/net/netns/bpf.h:15:9: note: forward declaration of 'struct bpf_link'
struct bpf_link *links[MAX_NETNS_BPF_ATTACH_TYPE];
^
> net/core/dev.c:8992:34: error: variable has incomplete type
'const struct bpf_link_ops'
static const struct bpf_link_ops
bpf_xdp_link_lops = {
^
net/core/dev.c:8992:21: note: forward declaration of 'struct bpf_link_ops'
static const struct bpf_link_ops bpf_xdp_link_lops = {
^
> net/core/dev.c:9000:25: error: variable has incomplete type
'struct bpf_link_primer'
struct bpf_link_primer link_primer;
^
net/core/dev.c:9000:9: note: forward declaration of 'struct bpf_link_primer'
struct bpf_link_primer link_primer;
^
> net/core/dev.c:9015:2: error: implicit declaration of function
'bpf_link_init' [-Werror,-Wimplicit-function-declaration]
bpf_link_init(&link->link, BPF_LINK_TYPE_XDP, &bpf_xdp_link_lops, prog);
^
net/core/dev.c:9015:2: note: did you mean 'bio_list_init'?
include/linux/bio.h:575:20: note: 'bio_list_init' declared here
static inline void bio_list_init(struct bio_list *bl)
^
> net/core/dev.c:9019:8: error: implicit declaration of function
'bpf_link_prime' [-Werror,-Wimplicit-function-declaration]
err =
bpf_link_prime(&link->link, &link_primer);
^
net/core/dev.c:9019:8: note: did you mean 'bpf_link_init'?
net/core/dev.c:9015:2: note: 'bpf_link_init' declared here
bpf_link_init(&link->link, BPF_LINK_TYPE_XDP, &bpf_xdp_link_lops,
prog);
^
> net/core/dev.c:9030:3: error: implicit declaration of function
'bpf_link_cleanup' [-Werror,-Wimplicit-function-declaration]
bpf_link_cleanup(&link_primer);
^
net/core/dev.c:9030:3: note: did you mean 'tcf_idr_cleanup'?
include/net/act_api.h:171:6: note: 'tcf_idr_cleanup' declared here
void tcf_idr_cleanup(struct tc_action_net *tn, u32 index);
^
> net/core/dev.c:9034:7: error: implicit declaration of function
'bpf_link_settle' [-Werror,-Wimplicit-function-declaration]
fd =
bpf_link_settle(&link_primer);
^
7 errors generated.
vim +8717 net/core/dev.c
8715
8716 struct bpf_xdp_link {
8717 struct bpf_link link;
8718 struct net_device *dev; /*
protected by rtnl_lock, no refcnt held */
8719 int flags;
8720 };
8721
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org