From: kernel test robot <lkp@intel.com>
To: Vinicius Costa Gomes <vinicius.gomes@intel.com>, bpf@vger.kernel.org
Cc: kbuild-all@lists.01.org,
Vinicius Costa Gomes <vinicius.gomes@intel.com>,
netdev@vger.kernel.org, ast@kernel.org, daniel@iogearbox.net,
memxor@gmail.com, kafai@fb.com, andrii@kernel.org,
songliubraving@fb.com, yhs@fb.com
Subject: Re: [PATCH net v1] bpf: Fix build when CONFIG_BPF_SYSCALL is disabled
Date: Wed, 10 Nov 2021 11:59:46 +0800 [thread overview]
Message-ID: <202111101156.m5ifQ54c-lkp@intel.com> (raw)
In-Reply-To: <20211110010024.31415-1-vinicius.gomes@intel.com>
[-- Attachment #1: Type: text/plain, Size: 33305 bytes --]
Hi Vinicius,
I love your patch! Yet something to improve:
[auto build test ERROR on net/master]
url: https://github.com/0day-ci/linux/commits/Vinicius-Costa-Gomes/bpf-Fix-build-when-CONFIG_BPF_SYSCALL-is-disabled/20211110-090148
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git fceb07950a7aac43d52d8c6ef580399a8b9b68fe
config: i386-debian-10.3 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/1e7a382c089da5714e4a9411765e84815cf550f9
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Vinicius-Costa-Gomes/bpf-Fix-build-when-CONFIG_BPF_SYSCALL-is-disabled/20211110-090148
git checkout 1e7a382c089da5714e4a9411765e84815cf550f9
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=i386 SHELL=/bin/bash
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
kernel/bpf/btf.c: In function 'btf_seq_show':
kernel/bpf/btf.c:5876:22: warning: function 'btf_seq_show' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
5876 | seq_vprintf((struct seq_file *)show->target, fmt, args);
| ^~~~~~~~
kernel/bpf/btf.c: In function 'btf_snprintf_show':
kernel/bpf/btf.c:5913:2: warning: function 'btf_snprintf_show' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
5913 | len = vsnprintf(show->target, ssnprintf->len_left, fmt, args);
| ^~~
kernel/bpf/btf.c: At top level:
>> kernel/bpf/btf.c:6370:9: error: variable 'bpf_tcp_ca_kfunc_list' has initializer but incomplete type
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rculist.h:10,
from include/linux/pid.h:5,
from include/linux/sched.h:14,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
>> include/linux/list.h:21:30: error: extra brace group at end of initializer
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: note: (near initialization for 'bpf_tcp_ca_kfunc_list')
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6370:55: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^
include/linux/list.h:21:34: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6370:55: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^
include/linux/list.h:21:43: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: warning: excess elements in struct initializer
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: note: (near initialization for 'bpf_tcp_ca_kfunc_list')
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rhashtable-types.h:14,
from include/linux/ipc.h:7,
from include/uapi/linux/sem.h:5,
from include/linux/sem.h:5,
from include/linux/sched.h:15,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
>> include/linux/mutex.h:109:3: error: extra brace group at end of initializer
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:109:3: note: (near initialization for 'bpf_tcp_ca_kfunc_list')
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/uapi/linux/btf.h:6,
from kernel/bpf/btf.c:4:
>> include/linux/types.h:170:24: error: extra brace group at end of initializer
170 | #define ATOMIC_INIT(i) { (i) }
| ^
include/linux/atomic/atomic-long.h:19:30: note: in expansion of macro 'ATOMIC_INIT'
19 | #define ATOMIC_LONG_INIT(i) ATOMIC_INIT(i)
| ^~~~~~~~~~~
include/linux/mutex.h:109:14: note: in expansion of macro 'ATOMIC_LONG_INIT'
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/types.h:170:24: note: (near initialization for 'bpf_tcp_ca_kfunc_list')
170 | #define ATOMIC_INIT(i) { (i) }
| ^
include/linux/atomic/atomic-long.h:19:30: note: in expansion of macro 'ATOMIC_INIT'
19 | #define ATOMIC_LONG_INIT(i) ATOMIC_INIT(i)
| ^~~~~~~~~~~
include/linux/mutex.h:109:14: note: in expansion of macro 'ATOMIC_LONG_INIT'
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rculist.h:10,
from include/linux/pid.h:5,
from include/linux/sched.h:14,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
>> include/linux/list.h:21:30: error: extra brace group at end of initializer
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
include/linux/mutex.h:111:18: note: in expansion of macro 'LIST_HEAD_INIT'
111 | , .wait_list = LIST_HEAD_INIT(lockname.wait_list) \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: note: (near initialization for 'bpf_tcp_ca_kfunc_list')
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
include/linux/mutex.h:111:18: note: in expansion of macro 'LIST_HEAD_INIT'
111 | , .wait_list = LIST_HEAD_INIT(lockname.wait_list) \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:32: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^
include/linux/list.h:21:34: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:32: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^
include/linux/list.h:21:43: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rhashtable-types.h:14,
from include/linux/ipc.h:7,
from include/uapi/linux/sem.h:5,
from include/linux/sem.h:5,
from include/linux/sched.h:15,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
include/linux/mutex.h:109:3: warning: excess elements in struct initializer
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:109:3: note: (near initialization for 'bpf_tcp_ca_kfunc_list')
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6370:9: error: variable 'prog_test_kfunc_list' has initializer but incomplete type
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rculist.h:10,
from include/linux/pid.h:5,
from include/linux/sched.h:14,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
>> include/linux/list.h:21:30: error: extra brace group at end of initializer
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: note: (near initialization for 'prog_test_kfunc_list')
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6370:55: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^
include/linux/list.h:21:34: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6370:55: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^
include/linux/list.h:21:43: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: warning: excess elements in struct initializer
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: note: (near initialization for 'prog_test_kfunc_list')
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
kernel/bpf/btf.c:6370:36: note: in expansion of macro 'LIST_HEAD_INIT'
6370 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rhashtable-types.h:14,
from include/linux/ipc.h:7,
from include/uapi/linux/sem.h:5,
from include/linux/sem.h:5,
from include/linux/sched.h:15,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
>> include/linux/mutex.h:109:3: error: extra brace group at end of initializer
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:109:3: note: (near initialization for 'prog_test_kfunc_list')
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/uapi/linux/btf.h:6,
from kernel/bpf/btf.c:4:
>> include/linux/types.h:170:24: error: extra brace group at end of initializer
170 | #define ATOMIC_INIT(i) { (i) }
| ^
include/linux/atomic/atomic-long.h:19:30: note: in expansion of macro 'ATOMIC_INIT'
19 | #define ATOMIC_LONG_INIT(i) ATOMIC_INIT(i)
| ^~~~~~~~~~~
include/linux/mutex.h:109:14: note: in expansion of macro 'ATOMIC_LONG_INIT'
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/types.h:170:24: note: (near initialization for 'prog_test_kfunc_list')
170 | #define ATOMIC_INIT(i) { (i) }
| ^
include/linux/atomic/atomic-long.h:19:30: note: in expansion of macro 'ATOMIC_INIT'
19 | #define ATOMIC_LONG_INIT(i) ATOMIC_INIT(i)
| ^~~~~~~~~~~
include/linux/mutex.h:109:14: note: in expansion of macro 'ATOMIC_LONG_INIT'
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rculist.h:10,
from include/linux/pid.h:5,
from include/linux/sched.h:14,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
>> include/linux/list.h:21:30: error: extra brace group at end of initializer
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
include/linux/mutex.h:111:18: note: in expansion of macro 'LIST_HEAD_INIT'
111 | , .wait_list = LIST_HEAD_INIT(lockname.wait_list) \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/list.h:21:30: note: (near initialization for 'prog_test_kfunc_list')
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^
include/linux/mutex.h:111:18: note: in expansion of macro 'LIST_HEAD_INIT'
111 | , .wait_list = LIST_HEAD_INIT(lockname.wait_list) \
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:32: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^
include/linux/list.h:21:34: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6371:32: error: invalid use of undefined type 'struct kfunc_btf_id_list'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^
include/linux/list.h:21:43: note: in definition of macro 'LIST_HEAD_INIT'
21 | #define LIST_HEAD_INIT(name) { &(name), &(name) }
| ^~~~
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rhashtable-types.h:14,
from include/linux/ipc.h:7,
from include/uapi/linux/sem.h:5,
from include/linux/sem.h:5,
from include/linux/sched.h:15,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
include/linux/mutex.h:109:3: warning: excess elements in struct initializer
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
include/linux/mutex.h:109:3: note: (near initialization for 'prog_test_kfunc_list')
109 | { .owner = ATOMIC_LONG_INIT(0) \
| ^
kernel/bpf/btf.c:6371:8: note: in expansion of macro '__MUTEX_INITIALIZER'
6371 | __MUTEX_INITIALIZER(name.mutex) }; \
| ^~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/linkage.h:7,
from include/linux/kernel.h:8,
from arch/x86/include/asm/percpu.h:27,
from arch/x86/include/asm/current.h:6,
from include/linux/sched.h:12,
from include/linux/ptrace.h:6,
from include/uapi/asm-generic/bpf_perf_event.h:4,
from ./arch/x86/include/generated/uapi/asm/bpf_perf_event.h:1,
from include/uapi/linux/bpf_perf_event.h:11,
from kernel/bpf/btf.c:6:
>> kernel/bpf/btf.c:6374:26: error: storage size of 'bpf_tcp_ca_kfunc_list' isn't known
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/export.h:98:21: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:160:34: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
| ^~~~~~~~~~~~~~~
include/linux/export.h:164:33: note: in expansion of macro '_EXPORT_SYMBOL'
164 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6372:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
6372 | EXPORT_SYMBOL_GPL(name)
| ^~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6374:26: error: storage size of 'bpf_tcp_ca_kfunc_list' isn't known
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~
include/linux/export.h:98:21: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:160:34: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
| ^~~~~~~~~~~~~~~
include/linux/export.h:164:33: note: in expansion of macro '_EXPORT_SYMBOL'
164 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6372:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
6372 | EXPORT_SYMBOL_GPL(name)
| ^~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6374:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6374 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6375:26: error: storage size of 'prog_test_kfunc_list' isn't known
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~
include/linux/export.h:98:21: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:160:34: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
| ^~~~~~~~~~~~~~~
include/linux/export.h:164:33: note: in expansion of macro '_EXPORT_SYMBOL'
164 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6372:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
6372 | EXPORT_SYMBOL_GPL(name)
| ^~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6375:26: error: storage size of 'prog_test_kfunc_list' isn't known
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~
include/linux/export.h:98:21: note: in definition of macro '___EXPORT_SYMBOL'
98 | extern typeof(sym) sym; \
| ^~~
include/linux/export.h:160:34: note: in expansion of macro '__EXPORT_SYMBOL'
160 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
| ^~~~~~~~~~~~~~~
include/linux/export.h:164:33: note: in expansion of macro '_EXPORT_SYMBOL'
164 | #define EXPORT_SYMBOL_GPL(sym) _EXPORT_SYMBOL(sym, "_gpl")
| ^~~~~~~~~~~~~~
kernel/bpf/btf.c:6372:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
6372 | EXPORT_SYMBOL_GPL(name)
| ^~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6375:1: note: in expansion of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6375 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~~~~
vim +/bpf_tcp_ca_kfunc_list +6370 kernel/bpf/btf.c
14f267d95fe4b0 Kumar Kartikeya Dwivedi 2021-10-02 6368
14f267d95fe4b0 Kumar Kartikeya Dwivedi 2021-10-02 6369 #define DEFINE_KFUNC_BTF_ID_LIST(name) \
14f267d95fe4b0 Kumar Kartikeya Dwivedi 2021-10-02 @6370 struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
14f267d95fe4b0 Kumar Kartikeya Dwivedi 2021-10-02 @6371 __MUTEX_INITIALIZER(name.mutex) }; \
14f267d95fe4b0 Kumar Kartikeya Dwivedi 2021-10-02 @6372 EXPORT_SYMBOL_GPL(name)
0e32dfc80bae53 Kumar Kartikeya Dwivedi 2021-10-02 6373
0e32dfc80bae53 Kumar Kartikeya Dwivedi 2021-10-02 @6374 DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
c48e51c8b07aba Kumar Kartikeya Dwivedi 2021-10-02 @6375 DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 34169 bytes --]
prev parent reply other threads:[~2021-11-10 4:00 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-10 1:00 [PATCH net v1] bpf: Fix build when CONFIG_BPF_SYSCALL is disabled Vinicius Costa Gomes
2021-11-10 3:22 ` kernel test robot
2021-11-10 3:59 ` kernel test robot [this message]
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=202111101156.m5ifQ54c-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=kafai@fb.com \
--cc=kbuild-all@lists.01.org \
--cc=memxor@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=songliubraving@fb.com \
--cc=vinicius.gomes@intel.com \
--cc=yhs@fb.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).