* [arnd-asm-generic:syscall-tbl-6.11 60/98] include/linux/syscalls.h:250:25: error: conflicting types for 'sys_oabi_semtimedop'; have 'long int(int, struct oabi_sembuf *, unsigned int)'
@ 2024-07-18 5:21 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2024-07-18 5:21 UTC (permalink / raw)
To: Arnd Bergmann; +Cc: oe-kbuild-all, linux-arch
tree: https://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic.git syscall-tbl-6.11
head: 9a99991d90521113a738c2a4761a4147fe4b31ca
commit: 39f4c859d147bb7d48fa363687c5afa2ab9b2893 [60/98] ARM: OABI SYSCALL_DEFINEx
config: arm-randconfig-004-20240718 (https://download.01.org/0day-ci/archive/20240718/202407181351.FWGCeOYe-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 14.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240718/202407181351.FWGCeOYe-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202407181351.FWGCeOYe-lkp@intel.com/
All errors (new ones prefixed by >>):
In file included from arch/arm/kernel/sys_oabi-compat.c:75:
>> include/linux/syscalls.h:250:25: error: conflicting types for 'sys_oabi_semtimedop'; have 'long int(int, struct oabi_sembuf *, unsigned int)'
250 | asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
| ^~~
include/linux/syscalls.h:236:9: note: in expansion of macro '__SYSCALL_DEFINEx'
236 | __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:225:36: note: in expansion of macro 'SYSCALL_DEFINEx'
225 | #define SYSCALL_DEFINE3(name, ...) SYSCALL_DEFINEx(3, _##name, __VA_ARGS__)
| ^~~~~~~~~~~~~~~
arch/arm/kernel/sys_oabi-compat.c:407:1: note: in expansion of macro 'SYSCALL_DEFINE3'
407 | SYSCALL_DEFINE3(oabi_semtimedop, int, semid, struct oabi_sembuf __user *, tsops,
| ^~~~~~~~~~~~~~~
In file included from arch/arm/kernel/sys_oabi-compat.c:13:
arch/arm/include/asm/syscalls.h:30:17: note: previous declaration of 'sys_oabi_semtimedop' with type 'long int(int, struct oabi_sembuf *, unsigned int, const struct old_timespec32 *)'
30 | asmlinkage long sys_oabi_semtimedop(int semid,
| ^~~~~~~~~~~~~~~~~~~
include/linux/syscalls.h:250:25: error: conflicting types for 'sys_oabi_ipc'; have 'long int(uint, int, int, int, void *)' {aka 'long int(unsigned int, int, int, int, void *)'}
250 | asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
| ^~~
include/linux/syscalls.h:236:9: note: in expansion of macro '__SYSCALL_DEFINEx'
236 | __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:227:36: note: in expansion of macro 'SYSCALL_DEFINEx'
227 | #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, _##name, __VA_ARGS__)
| ^~~~~~~~~~~~~~~
arch/arm/kernel/sys_oabi-compat.c:419:1: note: in expansion of macro 'SYSCALL_DEFINE5'
419 | SYSCALL_DEFINE5(oabi_ipc, uint, call, int, first, int, second, int, third,
| ^~~~~~~~~~~~~~~
arch/arm/include/asm/syscalls.h:36:16: note: previous declaration of 'sys_oabi_ipc' with type 'int(uint, int, int, int, void *, long int)' {aka 'int(unsigned int, int, int, int, void *, long int)'}
36 | asmlinkage int sys_oabi_ipc(uint call, int first, int second, int third,
| ^~~~~~~~~~~~
include/linux/syscalls.h:250:25: error: conflicting types for 'sys_oabi_sendto'; have 'long int(int, void *, size_t, unsigned int)' {aka 'long int(int, void *, unsigned int, unsigned int)'}
250 | asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
| ^~~
include/linux/syscalls.h:236:9: note: in expansion of macro '__SYSCALL_DEFINEx'
236 | __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:226:36: note: in expansion of macro 'SYSCALL_DEFINEx'
226 | #define SYSCALL_DEFINE4(name, ...) SYSCALL_DEFINEx(4, _##name, __VA_ARGS__)
| ^~~~~~~~~~~~~~~
arch/arm/kernel/sys_oabi-compat.c:448:1: note: in expansion of macro 'SYSCALL_DEFINE4'
448 | SYSCALL_DEFINE4(oabi_sendto, int, fd, void __user *, buff, size_t, len,
| ^~~~~~~~~~~~~~~
arch/arm/include/asm/syscalls.h:41:17: note: previous declaration of 'sys_oabi_sendto' with type 'long int(int, void *, size_t, unsigned int, struct sockaddr *, int)' {aka 'long int(int, void *, unsigned int, unsigned int, struct sockaddr *, int)'}
41 | asmlinkage long sys_oabi_sendto(int fd, void __user *buff,
| ^~~~~~~~~~~~~~~
arch/arm/kernel/sys_oabi-compat.c: In function '__do_sys_oabi_sendto':
arch/arm/kernel/sys_oabi-compat.c:452:13: error: 'addrlen' undeclared (first use in this function)
452 | if (addrlen == 112 &&
| ^~~~~~~
arch/arm/kernel/sys_oabi-compat.c:452:13: note: each undeclared identifier is reported only once for each function it appears in
In file included from include/linux/uaccess.h:11,
from include/linux/sched/task.h:13,
from include/linux/sched/signal.h:9,
from include/linux/rcuwait.h:6,
from include/linux/percpu-rwsem.h:7,
from include/linux/fs.h:33,
from include/uapi/linux/aio_abi.h:31,
from include/linux/syscalls.h:82:
arch/arm/kernel/sys_oabi-compat.c:453:34: error: 'addr' undeclared (first use in this function)
453 | get_user(sa_family, &addr->sa_family) == 0 &&
| ^~~~
arch/arm/include/asm/uaccess.h:184:35: note: in definition of macro '__get_user_check'
184 | register typeof(*(p)) __user *__p asm("r0") = (p); \
| ^
arch/arm/kernel/sys_oabi-compat.c:453:13: note: in expansion of macro 'get_user'
453 | get_user(sa_family, &addr->sa_family) == 0 &&
| ^~~~~~~~
arch/arm/kernel/sys_oabi-compat.c: In function '__do_sys_oabi_sendmsg':
arch/arm/kernel/sys_oabi-compat.c:483:16: error: too few arguments to function '__sys_sendmsg'
483 | return __sys_sendmsg(fd, msg, flags);
| ^~~~~~~~~~~~~
In file included from arch/arm/kernel/sys_oabi-compat.c:83:
include/linux/socket.h:411:13: note: declared here
411 | extern long __sys_sendmsg(int fd, struct user_msghdr __user *msg,
| ^~~~~~~~~~~~~
arch/arm/kernel/sys_oabi-compat.c: In function '__do_sys_oabi_socketcall':
arch/arm/kernel/sys_oabi-compat.c:501:29: error: too many arguments to function 'sys_oabi_sendto'
501 | r = sys_oabi_sendto(a[0], (void __user *)a[1], a[2], a[3],
| ^~~~~~~~~~~~~~~
include/linux/syscalls.h:250:25: note: declared here
250 | asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
| ^~~
include/linux/syscalls.h:236:9: note: in expansion of macro '__SYSCALL_DEFINEx'
236 | __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:226:36: note: in expansion of macro 'SYSCALL_DEFINEx'
226 | #define SYSCALL_DEFINE4(name, ...) SYSCALL_DEFINEx(4, _##name, __VA_ARGS__)
| ^~~~~~~~~~~~~~~
arch/arm/kernel/sys_oabi-compat.c:448:1: note: in expansion of macro 'SYSCALL_DEFINE4'
448 | SYSCALL_DEFINE4(oabi_sendto, int, fd, void __user *, buff, size_t, len,
| ^~~~~~~~~~~~~~~
arch/arm/kernel/sys_oabi-compat.c: In function '__do_sys_oabi_sendto':
arch/arm/kernel/sys_oabi-compat.c:457:1: warning: control reaches end of non-void function [-Wreturn-type]
457 | }
| ^
arch/arm/kernel/sys_oabi-compat.c: In function '__do_sys_oabi_sendmsg':
arch/arm/kernel/sys_oabi-compat.c:484:1: warning: control reaches end of non-void function [-Wreturn-type]
484 | }
| ^
vim +250 include/linux/syscalls.h
1bd21c6c21e848 Dominik Brodowski 2018-04-05 239
e145242ea0df6b Dominik Brodowski 2018-04-09 240 /*
e145242ea0df6b Dominik Brodowski 2018-04-09 241 * The asmlinkage stub is aliased to a function named __se_sys_*() which
e145242ea0df6b Dominik Brodowski 2018-04-09 242 * sign-extends 32-bit ints to longs whenever needed. The actual work is
e145242ea0df6b Dominik Brodowski 2018-04-09 243 * done within __do_sys_*().
e145242ea0df6b Dominik Brodowski 2018-04-09 244 */
1bd21c6c21e848 Dominik Brodowski 2018-04-05 245 #ifndef __SYSCALL_DEFINEx
bed1ffca022cc8 Frederic Weisbecker 2009-03-13 246 #define __SYSCALL_DEFINEx(x, name, ...) \
bee20031772af3 Arnd Bergmann 2018-06-19 247 __diag_push(); \
bee20031772af3 Arnd Bergmann 2018-06-19 248 __diag_ignore(GCC, 8, "-Wattribute-alias", \
bee20031772af3 Arnd Bergmann 2018-06-19 249 "Type aliasing is used to sanitize syscall arguments");\
83460ec8dcac14 Andi Kleen 2013-11-12 @250 asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
e145242ea0df6b Dominik Brodowski 2018-04-09 251 __attribute__((alias(__stringify(__se_sys##name)))); \
c9a211951c7c79 Howard McLauchlan 2018-03-21 252 ALLOW_ERROR_INJECTION(sys##name, ERRNO); \
e145242ea0df6b Dominik Brodowski 2018-04-09 253 static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
e145242ea0df6b Dominik Brodowski 2018-04-09 254 asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \
e145242ea0df6b Dominik Brodowski 2018-04-09 255 asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
1a94bc34768e46 Heiko Carstens 2009-01-14 256 { \
e145242ea0df6b Dominik Brodowski 2018-04-09 257 long ret = __do_sys##name(__MAP(x,__SC_CAST,__VA_ARGS__));\
07fe6e00f6cca6 Al Viro 2013-01-21 258 __MAP(x,__SC_TEST,__VA_ARGS__); \
2cf0966683430b Al Viro 2013-01-21 259 __PROTECT(x, ret,__MAP(x,__SC_ARGS,__VA_ARGS__)); \
2cf0966683430b Al Viro 2013-01-21 260 return ret; \
1a94bc34768e46 Heiko Carstens 2009-01-14 261 } \
bee20031772af3 Arnd Bergmann 2018-06-19 262 __diag_pop(); \
e145242ea0df6b Dominik Brodowski 2018-04-09 263 static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))
1bd21c6c21e848 Dominik Brodowski 2018-04-05 264 #endif /* __SYSCALL_DEFINEx */
1a94bc34768e46 Heiko Carstens 2009-01-14 265
:::::: The code at line 250 was first introduced by commit
:::::: 83460ec8dcac14142e7860a01fa59c267ac4657c syscalls.h: use gcc alias instead of assembler aliases for syscalls
:::::: TO: Andi Kleen <ak@linux.intel.com>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-07-18 5:22 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-18 5:21 [arnd-asm-generic:syscall-tbl-6.11 60/98] include/linux/syscalls.h:250:25: error: conflicting types for 'sys_oabi_semtimedop'; have 'long int(int, struct oabi_sembuf *, unsigned int)' kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.