From: kernel test robot <lkp@intel.com>
To: Kumar Kartikeya Dwivedi <memxor@gmail.com>, bpf@vger.kernel.org
Cc: kbuild-all@lists.01.org,
Vinicius Costa Gomes <vinicius.gomes@intel.com>,
Alexei Starovoitov <ast@kernel.org>,
Andrii Nakryiko <andrii@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Martin KaFai Lau <kafai@fb.com>, Song Liu <songliubraving@fb.com>,
Yonghong Song <yhs@fb.com>
Subject: Re: [PATCH bpf] bpf: Make CONFIG_DEBUG_INFO_BTF depend upon CONFIG_BPF_SYSCALL
Date: Fri, 12 Nov 2021 11:42:15 +0800 [thread overview]
Message-ID: <202111121155.LRtqvtpx-lkp@intel.com> (raw)
In-Reply-To: <20211112015934.527181-1-memxor@gmail.com>
[-- Attachment #1: Type: text/plain, Size: 8628 bytes --]
Hi Kumar,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on bpf/master]
url: https://github.com/0day-ci/linux/commits/Kumar-Kartikeya-Dwivedi/bpf-Make-CONFIG_DEBUG_INFO_BTF-depend-upon-CONFIG_BPF_SYSCALL/20211112-100114
base: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git master
config: openrisc-buildonly-randconfig-r003-20211111 (attached as .config)
compiler: or1k-linux-gcc (GCC) 11.2.0
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://github.com/0day-ci/linux/commit/ea181ce7046ae7f916b4ede6b04c48416d89b0b2
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Kumar-Kartikeya-Dwivedi/bpf-Make-CONFIG_DEBUG_INFO_BTF-depend-upon-CONFIG_BPF_SYSCALL/20211112-100114
git checkout ea181ce7046ae7f916b4ede6b04c48416d89b0b2
# save the attached .config to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=openrisc SHELL=/bin/bash kernel/bpf/
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:29: error: function 'btf_seq_show' might be a candidate for 'gnu_printf' format attribute [-Werror=suggest-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:9: error: function 'btf_snprintf_show' might be a candidate for 'gnu_printf' format attribute [-Werror=suggest-attribute=format]
5913 | len = vsnprintf(show->target, ssnprintf->len_left, fmt, args);
| ^~~
kernel/bpf/btf.c: At top level:
>> kernel/bpf/btf.c:6349:8: error: redefinition of 'struct kfunc_btf_id_list'
6349 | struct kfunc_btf_id_list {
| ^~~~~~~~~~~~~~~~~
In file included from include/linux/bpf_verifier.h:8,
from kernel/bpf/btf.c:19:
include/linux/btf.h:275:8: note: originally defined here
275 | struct kfunc_btf_id_list {};
| ^~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6399:26: error: conflicting types for 'bpf_tcp_ca_kfunc_list'; have 'struct kfunc_btf_id_list'
6399 | DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6395:34: note: in definition of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6395 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~
In file included from include/linux/bpf_verifier.h:8,
from kernel/bpf/btf.c:19:
include/linux/btf.h:276:33: note: previous declaration of 'bpf_tcp_ca_kfunc_list' with type 'struct kfunc_btf_id_list'
276 | static struct kfunc_btf_id_list bpf_tcp_ca_kfunc_list __maybe_unused;
| ^~~~~~~~~~~~~~~~~~~~~
>> kernel/bpf/btf.c:6400:26: error: conflicting types for 'prog_test_kfunc_list'; have 'struct kfunc_btf_id_list'
6400 | DEFINE_KFUNC_BTF_ID_LIST(prog_test_kfunc_list);
| ^~~~~~~~~~~~~~~~~~~~
kernel/bpf/btf.c:6395:34: note: in definition of macro 'DEFINE_KFUNC_BTF_ID_LIST'
6395 | struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
| ^~~~
In file included from include/linux/bpf_verifier.h:8,
from kernel/bpf/btf.c:19:
include/linux/btf.h:277:33: note: previous declaration of 'prog_test_kfunc_list' with type 'struct kfunc_btf_id_list'
277 | static struct kfunc_btf_id_list prog_test_kfunc_list __maybe_unused;
| ^~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
vim +6349 kernel/bpf/btf.c
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6348
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 @6349 struct kfunc_btf_id_list {
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6350 struct list_head list;
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6351 struct mutex mutex;
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6352 };
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6353
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6354 #ifdef CONFIG_DEBUG_INFO_BTF_MODULES
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6355
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6356 void register_kfunc_btf_id_set(struct kfunc_btf_id_list *l,
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6357 struct kfunc_btf_id_set *s)
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6358 {
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6359 mutex_lock(&l->mutex);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6360 list_add(&s->list, &l->list);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6361 mutex_unlock(&l->mutex);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6362 }
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6363 EXPORT_SYMBOL_GPL(register_kfunc_btf_id_set);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6364
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6365 void unregister_kfunc_btf_id_set(struct kfunc_btf_id_list *l,
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6366 struct kfunc_btf_id_set *s)
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6367 {
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6368 mutex_lock(&l->mutex);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6369 list_del_init(&s->list);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6370 mutex_unlock(&l->mutex);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6371 }
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6372 EXPORT_SYMBOL_GPL(unregister_kfunc_btf_id_set);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6373
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6374 bool bpf_check_mod_kfunc_call(struct kfunc_btf_id_list *klist, u32 kfunc_id,
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6375 struct module *owner)
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6376 {
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6377 struct kfunc_btf_id_set *s;
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6378
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6379 if (!owner)
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6380 return false;
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6381 mutex_lock(&klist->mutex);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6382 list_for_each_entry(s, &klist->list, list) {
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6383 if (s->owner == owner && btf_id_set_contains(s->set, kfunc_id)) {
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6384 mutex_unlock(&klist->mutex);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6385 return true;
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6386 }
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6387 }
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6388 mutex_unlock(&klist->mutex);
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6389 return false;
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6390 }
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6391
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6392 #endif
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6393
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6394 #define DEFINE_KFUNC_BTF_ID_LIST(name) \
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6395 struct kfunc_btf_id_list name = { LIST_HEAD_INIT(name.list), \
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6396 __MUTEX_INITIALIZER(name.mutex) }; \
14f267d95fe4b08 Kumar Kartikeya Dwivedi 2021-10-02 6397 EXPORT_SYMBOL_GPL(name)
0e32dfc80bae53b Kumar Kartikeya Dwivedi 2021-10-02 6398
0e32dfc80bae53b Kumar Kartikeya Dwivedi 2021-10-02 @6399 DEFINE_KFUNC_BTF_ID_LIST(bpf_tcp_ca_kfunc_list);
c48e51c8b07aba8 Kumar Kartikeya Dwivedi 2021-10-02 @6400 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: 23077 bytes --]
next prev parent reply other threads:[~2021-11-12 3:43 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-12 1:59 [PATCH bpf] bpf: Make CONFIG_DEBUG_INFO_BTF depend upon CONFIG_BPF_SYSCALL Kumar Kartikeya Dwivedi
2021-11-12 3:42 ` kernel test robot [this message]
2021-11-12 6:18 ` kernel test robot
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=202111121155.LRtqvtpx-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=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