[jolsa-perf:bpf/tramp_27 25/33] kernel/bpf/syscall.c:3145:2: error: call to undeclared function 'bpf_tramp_id_put'; ISO C99 and later do not support implicit function declarations

From: kernel test robot
Date: Sun Jul 10 2022 - 16:16:47 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git bpf/tramp_27
head: 08201713df8992b94d140b43fd4f20f1ad4aedb3
commit: 09c2a865c50223e0a31377f51bd567e5d5943e73 [25/33] bpf: Add support for tracing multi link
config: x86_64-randconfig-a012 (https://download.01.org/0day-ci/archive/20220711/202207110453.fdFb8WAD-lkp@xxxxxxxxx/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project 6ce63e267aab79ca87bf63453d34dd3909ab978d)
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://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git/commit/?id=09c2a865c50223e0a31377f51bd567e5d5943e73
git remote add jolsa-perf https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git
git fetch --no-tags jolsa-perf bpf/tramp_27
git checkout 09c2a865c50223e0a31377f51bd567e5d5943e73
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

kernel/bpf/syscall.c:2503:15: error: call to undeclared function 'is_tracing_multi'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
multi_func = is_tracing_multi(attr->expected_attach_type);
^
kernel/bpf/syscall.c:3137:15: error: call to undeclared function 'bpf_trampoline_multi_detach'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
WARN_ON_ONCE(bpf_trampoline_multi_detach(&tr_link->tp, tr_link->id));
^
>> kernel/bpf/syscall.c:3145:2: error: call to undeclared function 'bpf_tramp_id_put'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
bpf_tramp_id_put(tr_link->id);
^
kernel/bpf/syscall.c:3145:2: note: did you mean 'bpf_trampoline_put'?
include/linux/bpf.h:1013:20: note: 'bpf_trampoline_put' declared here
static inline void bpf_trampoline_put(struct bpf_trampoline *tr) {}
^
kernel/bpf/syscall.c:3308:7: error: call to undeclared function 'bpf_tramp_id_alloc'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
id = bpf_tramp_id_alloc(cnt);
^
kernel/bpf/syscall.c:3308:5: warning: incompatible integer to pointer conversion assigning to 'struct bpf_tramp_id *' from 'int' [-Wint-conversion]
id = bpf_tramp_id_alloc(cnt);
^ ~~~~~~~~~~~~~~~~~~~~~~~
kernel/bpf/syscall.c:3349:8: error: call to undeclared function 'bpf_trampoline_multi_attach'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
err = bpf_trampoline_multi_attach(&link->tp, id);
^
kernel/bpf/syscall.c:3349:8: note: did you mean 'bpf_tracing_multi_attach'?
kernel/bpf/syscall.c:3293:12: note: 'bpf_tracing_multi_attach' declared here
static int bpf_tracing_multi_attach(struct bpf_prog *prog,
^
kernel/bpf/syscall.c:4821:12: error: call to undeclared function 'is_tracing_multi'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
else if (is_tracing_multi(prog->expected_attach_type))
^
1 warning and 6 errors generated.


vim +/bpf_tramp_id_put +3145 kernel/bpf/syscall.c

3139
3140 static void bpf_tracing_multi_link_dealloc(struct bpf_link *link)
3141 {
3142 struct bpf_tracing_multi_link *tr_link =
3143 container_of(link, struct bpf_tracing_multi_link, link);
3144
> 3145 bpf_tramp_id_put(tr_link->id);
3146 kfree(tr_link);
3147 }
3148

--
0-DAY CI Kernel Test Service
https://01.org/lkp