tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c:14:1: warning: no previous prototype for function 'bpf_testmod_test_read'

From: kernel test robot
Date: Fri Aug 06 2021 - 05:35:25 EST


Hi Arnaldo,

First bad commit (maybe != root cause):

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 902e7f373fff2476b53824264c12e4e76c7ec02a
commit: 4bba4c4bb09ad4a2b70836725e08439c86d8f9e4 tools headers: Get tools's linux/compiler.h closer to the kernel's
date: 8 months ago
config: x86_64-randconfig-r016-20210805 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 31a71a393f65d9e07b5b0756fef9dd16690950ee)
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/torvalds/linux.git/commit/?id=4bba4c4bb09ad4a2b70836725e08439c86d8f9e4
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 4bba4c4bb09ad4a2b70836725e08439c86d8f9e4
# 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@xxxxxxxxx>

All warnings (new ones prefixed by >>):

>> tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c:14:1: warning: no previous prototype for function 'bpf_testmod_test_read' [-Wmissing-prototypes]
bpf_testmod_test_read(struct file *file, struct kobject *kobj,
^
tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c:13:10: note: declare 'static' if the function is not intended to be used outside of this translation unit
noinline ssize_t
^
static
1 warning generated.


vim +/bpf_testmod_test_read +14 tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c

9f7fa225894c7f Andrii Nakryiko 2020-12-03 12
9f7fa225894c7f Andrii Nakryiko 2020-12-03 13 noinline ssize_t
9f7fa225894c7f Andrii Nakryiko 2020-12-03 @14 bpf_testmod_test_read(struct file *file, struct kobject *kobj,
9f7fa225894c7f Andrii Nakryiko 2020-12-03 15 struct bin_attribute *bin_attr,
9f7fa225894c7f Andrii Nakryiko 2020-12-03 16 char *buf, loff_t off, size_t len)
9f7fa225894c7f Andrii Nakryiko 2020-12-03 17 {
9f7fa225894c7f Andrii Nakryiko 2020-12-03 18 struct bpf_testmod_test_read_ctx ctx = {
9f7fa225894c7f Andrii Nakryiko 2020-12-03 19 .buf = buf,
9f7fa225894c7f Andrii Nakryiko 2020-12-03 20 .off = off,
9f7fa225894c7f Andrii Nakryiko 2020-12-03 21 .len = len,
9f7fa225894c7f Andrii Nakryiko 2020-12-03 22 };
9f7fa225894c7f Andrii Nakryiko 2020-12-03 23
9f7fa225894c7f Andrii Nakryiko 2020-12-03 24 trace_bpf_testmod_test_read(current, &ctx);
9f7fa225894c7f Andrii Nakryiko 2020-12-03 25
9f7fa225894c7f Andrii Nakryiko 2020-12-03 26 return -EIO; /* always fail */
9f7fa225894c7f Andrii Nakryiko 2020-12-03 27 }
9f7fa225894c7f Andrii Nakryiko 2020-12-03 28 EXPORT_SYMBOL(bpf_testmod_test_read);
9f7fa225894c7f Andrii Nakryiko 2020-12-03 29 ALLOW_ERROR_INJECTION(bpf_testmod_test_read, ERRNO);
9f7fa225894c7f Andrii Nakryiko 2020-12-03 30

:::::: The code at line 14 was first introduced by commit
:::::: 9f7fa225894c7fcb014f3699a402fcc4d896cb1c selftests/bpf: Add bpf_testmod kernel module for testing

:::::: TO: Andrii Nakryiko <andrii@xxxxxxxxxx>
:::::: CC: Alexei Starovoitov <ast@xxxxxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip