[mcgrof-next:20211118-sysctl-cleanups-set-04-v2 33/36] fs/exec.c:2180:62: error: macro "register_sysctl_init" passed 3 arguments, but takes just 2

From: kernel test robot
Date: Fri Nov 19 2021 - 06:42:52 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git 20211118-sysctl-cleanups-set-04-v2
head: 3110d41a56792588bd2f64621080948b0fceb6ab
commit: 06e103c9b0d01c4e2e8c341e44a599e5d17413d2 [33/36] fs: move fs/exec.c sysctls into its own file
config: nds32-allnoconfig (attached as .config)
compiler: nds32le-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://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git/commit/?id=06e103c9b0d01c4e2e8c341e44a599e5d17413d2
git remote add mcgrof-next https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux-next.git
git fetch --no-tags mcgrof-next 20211118-sysctl-cleanups-set-04-v2
git checkout 06e103c9b0d01c4e2e8c341e44a599e5d17413d2
# 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=nds32 SHELL=/bin/bash

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

All errors (new ones prefixed by >>):

fs/exec.c: In function 'init_fs_exec_sysctls':
>> fs/exec.c:2180:62: error: macro "register_sysctl_init" passed 3 arguments, but takes just 2
2180 | register_sysctl_init("fs", fs_exec_sysctls, "fs_exec");
| ^
In file included from include/linux/key.h:17,
from include/linux/cred.h:13,
from include/linux/sched/signal.h:10,
from include/linux/rcuwait.h:6,
from include/linux/percpu-rwsem.h:7,
from include/linux/fs.h:33,
from include/linux/fdtable.h:16,
from fs/exec.c:29:
include/linux/sysctl.h:220: note: macro "register_sysctl_init" defined here
220 | #define register_sysctl_init(path, table) __register_sysctl_init(path, table, #table)
|
>> fs/exec.c:2180:9: error: 'register_sysctl_init' undeclared (first use in this function); did you mean 'register_sysctl_paths'?
2180 | register_sysctl_init("fs", fs_exec_sysctls, "fs_exec");
| ^~~~~~~~~~~~~~~~~~~~
| register_sysctl_paths
fs/exec.c:2180:9: note: each undeclared identifier is reported only once for each function it appears in
fs/exec.c:2182:74: error: macro "register_sysctl_init" passed 3 arguments, but takes just 2
2182 | register_sysctl_init("kernel", kernel_exec_sysctls, "kernel_exec");
| ^
In file included from include/linux/key.h:17,
from include/linux/cred.h:13,
from include/linux/sched/signal.h:10,
from include/linux/rcuwait.h:6,
from include/linux/percpu-rwsem.h:7,
from include/linux/fs.h:33,
from include/linux/fdtable.h:16,
from fs/exec.c:29:
include/linux/sysctl.h:220: note: macro "register_sysctl_init" defined here
220 | #define register_sysctl_init(path, table) __register_sysctl_init(path, table, #table)
|
At top level:
fs/exec.c:2152:25: warning: 'kernel_exec_sysctls' defined but not used [-Wunused-variable]
2152 | static struct ctl_table kernel_exec_sysctls[] = {
| ^~~~~~~~~~~~~~~~~~~
fs/exec.c:2127:25: warning: 'fs_exec_sysctls' defined but not used [-Wunused-variable]
2127 | static struct ctl_table fs_exec_sysctls[] = {
| ^~~~~~~~~~~~~~~


vim +/register_sysctl_init +2180 fs/exec.c

2177
2178 static int __init init_fs_exec_sysctls(void)
2179 {
> 2180 register_sysctl_init("fs", fs_exec_sysctls, "fs_exec");
2181 #ifdef CONFIG_COREDUMP
2182 register_sysctl_init("kernel", kernel_exec_sysctls, "kernel_exec");
2183 #endif
2184 return 0;
2185 }
2186

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

Attachment: .config.gz
Description: application/gzip