[jolsa-perf:bpf/tramp_22 21/21] kernel/bpf/syscall.c:3137:22: error: implicit declaration of function 'bpf_trampoline_multi_detach'

From: kernel test robot
Date: Tue Jul 05 2022 - 23:59:43 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git bpf/tramp_22
head: 1d891c46bb689a24985cea58f4eddb053d6b1331
commit: 1d891c46bb689a24985cea58f4eddb053d6b1331 [21/21] bpf: Add support to attach multi trampolines
config: x86_64-randconfig-a013 (https://download.01.org/0day-ci/archive/20220706/202207061138.sopuGQ2w-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git/commit/?id=1d891c46bb689a24985cea58f4eddb053d6b1331
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_22
git checkout 1d891c46bb689a24985cea58f4eddb053d6b1331
# save the config file
mkdir build_dir && cp config build_dir/.config
make 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 >>):

In file included from arch/x86/include/asm/bug.h:87,
from include/linux/bug.h:5,
from include/linux/cpumask.h:14,
from arch/x86/include/asm/cpumask.h:5,
from arch/x86/include/asm/msr.h:11,
from arch/x86/include/asm/processor.h:22,
from arch/x86/include/asm/timex.h:5,
from include/linux/timex.h:67,
from include/linux/time32.h:13,
from include/linux/time.h:60,
from include/linux/ktime.h:24,
from include/linux/timer.h:6,
from include/linux/workqueue.h:9,
from include/linux/bpf.h:10,
from kernel/bpf/syscall.c:4:
kernel/bpf/syscall.c: In function 'bpf_tracing_multi_link_release':
>> kernel/bpf/syscall.c:3137:22: error: implicit declaration of function 'bpf_trampoline_multi_detach' [-Werror=implicit-function-declaration]
3137 | WARN_ON_ONCE(bpf_trampoline_multi_detach(&tr_link->tp, tr_link->id));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/asm-generic/bug.h:110:32: note: in definition of macro 'WARN_ON_ONCE'
110 | int __ret_warn_on = !!(condition); \
| ^~~~~~~~~
kernel/bpf/syscall.c: In function 'bpf_tracing_multi_attach':
kernel/bpf/syscall.c:3307:14: error: implicit declaration of function 'bpf_tramp_id_alloc'; did you mean 'bpf_tramp_id_resolve'? [-Werror=implicit-function-declaration]
3307 | id = bpf_tramp_id_alloc(cnt);
| ^~~~~~~~~~~~~~~~~~
| bpf_tramp_id_resolve
kernel/bpf/syscall.c:3307:12: warning: assignment to 'struct bpf_tramp_id *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
3307 | id = bpf_tramp_id_alloc(cnt);
| ^
>> kernel/bpf/syscall.c:3348:15: error: implicit declaration of function 'bpf_trampoline_multi_attach'; did you mean 'bpf_tracing_multi_attach'? [-Werror=implicit-function-declaration]
3348 | err = bpf_trampoline_multi_attach(&link->tp, id);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
| bpf_tracing_multi_attach
cc1: some warnings being treated as errors


vim +/bpf_trampoline_multi_detach +3137 kernel/bpf/syscall.c

3131
3132 static void bpf_tracing_multi_link_release(struct bpf_link *link)
3133 {
3134 struct bpf_tracing_multi_link *tr_link =
3135 container_of(link, struct bpf_tracing_multi_link, link);
3136
> 3137 WARN_ON_ONCE(bpf_trampoline_multi_detach(&tr_link->tp, tr_link->id));
3138 }
3139

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