lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202111051243.nUnBdMGb-lkp@intel.com>
Date:   Fri, 5 Nov 2021 12:36:55 +0800
From:   kernel test robot <lkp@...el.com>
To:     André Almeida <andrealmeid@...labora.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous
 prototype for '__arm64_sys_futex_waitv'

Hi André,

FYI, the error/warning still remains.

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   d4439a1189f93d0ac1eaf0197db8e6b3e197d5c7
commit: bf69bad38cf63d980e8a603f8d1bd1f85b5ed3d9 futex: Implement sys_futex_waitv()
date:   4 weeks ago
config: arm64-buildonly-randconfig-r006-20211104 (attached as .config)
compiler: aarch64-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/torvalds/linux.git/commit/?id=bf69bad38cf63d980e8a603f8d1bd1f85b5ed3d9
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout bf69bad38cf63d980e8a603f8d1bd1f85b5ed3d9
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross ARCH=arm64 

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

All warnings (new ones prefixed by >>):

         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:113:1: note: in expansion of macro 'COND_SYSCALL'
     113 | COND_SYSCALL(signalfd4);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:41:32: warning: no previous prototype for '__arm64_compat_sys_signalfd4' [-Wmissing-prototypes]
      41 |         asmlinkage long __weak __arm64_compat_sys_##name(const struct pt_regs *regs)    \
         |                                ^~~~~~~~~~~~~~~~~~~
   kernel/sys_ni.c:114:1: note: in expansion of macro 'COND_SYSCALL_COMPAT'
     114 | COND_SYSCALL_COMPAT(signalfd4);
         | ^~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_timerfd_create' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:123:1: note: in expansion of macro 'COND_SYSCALL'
     123 | COND_SYSCALL(timerfd_create);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_timerfd_settime' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:124:1: note: in expansion of macro 'COND_SYSCALL'
     124 | COND_SYSCALL(timerfd_settime);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_timerfd_settime32' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:125:1: note: in expansion of macro 'COND_SYSCALL'
     125 | COND_SYSCALL(timerfd_settime32);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_timerfd_gettime' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:126:1: note: in expansion of macro 'COND_SYSCALL'
     126 | COND_SYSCALL(timerfd_gettime);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_timerfd_gettime32' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:127:1: note: in expansion of macro 'COND_SYSCALL'
     127 | COND_SYSCALL(timerfd_gettime32);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_acct' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:132:1: note: in expansion of macro 'COND_SYSCALL'
     132 | COND_SYSCALL(acct);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_capget' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:135:1: note: in expansion of macro 'COND_SYSCALL'
     135 | COND_SYSCALL(capget);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_capset' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:136:1: note: in expansion of macro 'COND_SYSCALL'
     136 | COND_SYSCALL(capset);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_clone3' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:144:1: note: in expansion of macro 'COND_SYSCALL'
     144 | COND_SYSCALL(clone3);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_futex' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:147:1: note: in expansion of macro 'COND_SYSCALL'
     147 | COND_SYSCALL(futex);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_futex_time32' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:148:1: note: in expansion of macro 'COND_SYSCALL'
     148 | COND_SYSCALL(futex_time32);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_set_robust_list' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:149:1: note: in expansion of macro 'COND_SYSCALL'
     149 | COND_SYSCALL(set_robust_list);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:41:32: warning: no previous prototype for '__arm64_compat_sys_set_robust_list' [-Wmissing-prototypes]
      41 |         asmlinkage long __weak __arm64_compat_sys_##name(const struct pt_regs *regs)    \
         |                                ^~~~~~~~~~~~~~~~~~~
   kernel/sys_ni.c:150:1: note: in expansion of macro 'COND_SYSCALL_COMPAT'
     150 | COND_SYSCALL_COMPAT(set_robust_list);
         | ^~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_get_robust_list' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:151:1: note: in expansion of macro 'COND_SYSCALL'
     151 | COND_SYSCALL(get_robust_list);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:41:32: warning: no previous prototype for '__arm64_compat_sys_get_robust_list' [-Wmissing-prototypes]
      41 |         asmlinkage long __weak __arm64_compat_sys_##name(const struct pt_regs *regs)    \
         |                                ^~~~~~~~~~~~~~~~~~~
   kernel/sys_ni.c:152:1: note: in expansion of macro 'COND_SYSCALL_COMPAT'
     152 | COND_SYSCALL_COMPAT(get_robust_list);
         | ^~~~~~~~~~~~~~~~~~~
>> arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_futex_waitv' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:153:1: note: in expansion of macro 'COND_SYSCALL'
     153 | COND_SYSCALL(futex_waitv);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_kexec_load' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:160:1: note: in expansion of macro 'COND_SYSCALL'
     160 | COND_SYSCALL(kexec_load);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:41:32: warning: no previous prototype for '__arm64_compat_sys_kexec_load' [-Wmissing-prototypes]
      41 |         asmlinkage long __weak __arm64_compat_sys_##name(const struct pt_regs *regs)    \
         |                                ^~~~~~~~~~~~~~~~~~~
   kernel/sys_ni.c:161:1: note: in expansion of macro 'COND_SYSCALL_COMPAT'
     161 | COND_SYSCALL_COMPAT(kexec_load);
         | ^~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_init_module' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:164:1: note: in expansion of macro 'COND_SYSCALL'
     164 | COND_SYSCALL(init_module);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_delete_module' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:165:1: note: in expansion of macro 'COND_SYSCALL'
     165 | COND_SYSCALL(delete_module);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_syslog' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:170:1: note: in expansion of macro 'COND_SYSCALL'
     170 | COND_SYSCALL(syslog);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setregid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:177:1: note: in expansion of macro 'COND_SYSCALL'
     177 | COND_SYSCALL(setregid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setgid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:178:1: note: in expansion of macro 'COND_SYSCALL'
     178 | COND_SYSCALL(setgid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setreuid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:179:1: note: in expansion of macro 'COND_SYSCALL'
     179 | COND_SYSCALL(setreuid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setuid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:180:1: note: in expansion of macro 'COND_SYSCALL'
     180 | COND_SYSCALL(setuid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setresuid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:181:1: note: in expansion of macro 'COND_SYSCALL'
     181 | COND_SYSCALL(setresuid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_getresuid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:182:1: note: in expansion of macro 'COND_SYSCALL'
     182 | COND_SYSCALL(getresuid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setresgid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:183:1: note: in expansion of macro 'COND_SYSCALL'
     183 | COND_SYSCALL(setresgid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_getresgid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:184:1: note: in expansion of macro 'COND_SYSCALL'
     184 | COND_SYSCALL(getresgid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setfsuid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:185:1: note: in expansion of macro 'COND_SYSCALL'
     185 | COND_SYSCALL(setfsuid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setfsgid' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:186:1: note: in expansion of macro 'COND_SYSCALL'
     186 | COND_SYSCALL(setfsgid);
         | ^~~~~~~~~~~~
   arch/arm64/include/asm/syscall_wrapper.h:76:32: warning: no previous prototype for '__arm64_sys_setgroups' [-Wmissing-prototypes]
      76 |         asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)   \
         |                                ^~~~~~~~~~~~
   kernel/sys_ni.c:187:1: note: in expansion of macro 'COND_SYSCALL'
     187 | COND_SYSCALL(setgroups);


vim +/__arm64_sys_futex_waitv +76 arch/arm64/include/asm/syscall_wrapper.h

4378a7d4be30ec Mark Rutland  2018-07-11  50  
4378a7d4be30ec Mark Rutland  2018-07-11  51  #define __SYSCALL_DEFINEx(x, name, ...)						\
4378a7d4be30ec Mark Rutland  2018-07-11  52  	asmlinkage long __arm64_sys##name(const struct pt_regs *regs);		\
4378a7d4be30ec Mark Rutland  2018-07-11  53  	ALLOW_ERROR_INJECTION(__arm64_sys##name, ERRNO);			\
4378a7d4be30ec Mark Rutland  2018-07-11  54  	static long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__));		\
4378a7d4be30ec Mark Rutland  2018-07-11  55  	static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));	\
4378a7d4be30ec Mark Rutland  2018-07-11  56  	asmlinkage long __arm64_sys##name(const struct pt_regs *regs)		\
4378a7d4be30ec Mark Rutland  2018-07-11  57  	{									\
4378a7d4be30ec Mark Rutland  2018-07-11  58  		return __se_sys##name(SC_ARM64_REGS_TO_ARGS(x,__VA_ARGS__));	\
4378a7d4be30ec Mark Rutland  2018-07-11  59  	}									\
4378a7d4be30ec Mark Rutland  2018-07-11  60  	static long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__))		\
4378a7d4be30ec Mark Rutland  2018-07-11  61  	{									\
4378a7d4be30ec Mark Rutland  2018-07-11  62  		long ret = __do_sys##name(__MAP(x,__SC_CAST,__VA_ARGS__));	\
4378a7d4be30ec Mark Rutland  2018-07-11  63  		__MAP(x,__SC_TEST,__VA_ARGS__);					\
4378a7d4be30ec Mark Rutland  2018-07-11  64  		__PROTECT(x, ret,__MAP(x,__SC_ARGS,__VA_ARGS__));		\
4378a7d4be30ec Mark Rutland  2018-07-11  65  		return ret;							\
4378a7d4be30ec Mark Rutland  2018-07-11  66  	}									\
4378a7d4be30ec Mark Rutland  2018-07-11  67  	static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))
4378a7d4be30ec Mark Rutland  2018-07-11  68  
4378a7d4be30ec Mark Rutland  2018-07-11  69  #define SYSCALL_DEFINE0(sname)							\
4378a7d4be30ec Mark Rutland  2018-07-11  70  	SYSCALL_METADATA(_##sname, 0);						\
0e358bd7b7ebd2 Sami Tolvanen 2019-05-24  71  	asmlinkage long __arm64_sys_##sname(const struct pt_regs *__unused);	\
4378a7d4be30ec Mark Rutland  2018-07-11  72  	ALLOW_ERROR_INJECTION(__arm64_sys_##sname, ERRNO);			\
0e358bd7b7ebd2 Sami Tolvanen 2019-05-24  73  	asmlinkage long __arm64_sys_##sname(const struct pt_regs *__unused)
4378a7d4be30ec Mark Rutland  2018-07-11  74  
c27eccfe4d6c74 Sami Tolvanen 2019-09-10  75  #define COND_SYSCALL(name)							\
c27eccfe4d6c74 Sami Tolvanen 2019-09-10 @76  	asmlinkage long __weak __arm64_sys_##name(const struct pt_regs *regs)	\
c27eccfe4d6c74 Sami Tolvanen 2019-09-10  77  	{									\
c27eccfe4d6c74 Sami Tolvanen 2019-09-10  78  		return sys_ni_syscall();					\
c27eccfe4d6c74 Sami Tolvanen 2019-09-10  79  	}
4378a7d4be30ec Mark Rutland  2018-07-11  80  

:::::: The code at line 76 was first introduced by commit
:::::: c27eccfe4d6c7481ce99f1c433ca043ab464080a arm64: fix function types in COND_SYSCALL

:::::: TO: Sami Tolvanen <samitolvanen@...gle.com>
:::::: CC: Will Deacon <will@...nel.org>

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

Download attachment ".config.gz" of type "application/gzip" (35776 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ