* [scosu-sched:topic/mmap-cap-prot-wip/v6.18 423/1130] include/linux/syscalls.h:293:25: error: conflicting types for 'sys_io_getevents_time32'; have 'long int(aio_context_t, __s32, __s32, struct io_event *, struct old_timespec32 *)' {aka 'long int(long unsigned int, int, int, struct io_event *, struct o...
@ 2026-05-21 15:23 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-05-21 15:23 UTC (permalink / raw)
To: Christian Ehrhardt; +Cc: oe-kbuild-all
tree: https://github.com/scosu/linux-sched topic/mmap-cap-prot-wip/v6.18
head: f69a5a9d9fee15edde28429e23a4c749a59937bd
commit: 7843b89341e2ef350c85f26da6cc575799b103bd [423/1130] [CHERRY-PICK] aio: Change aio_context_t to a user pointer
config: sh-allmodconfig (https://download.01.org/0day-ci/archive/20260521/202605212349.joMooW5T-lkp@intel.com/config)
compiler: sh4-linux-gcc (GCC) 15.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260521/202605212349.joMooW5T-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/202605212349.joMooW5T-lkp@intel.com/
All errors (new ones prefixed by >>):
fs/aio.c: In function 'aio_ring_mremap':
fs/aio.c:469:46: error: assignment to 'aio_context_t' {aka 'long unsigned int'} from 'void *' makes integer from pointer without a cast [-Wint-conversion]
469 | ctx->user_id = uaddr_to_user_ptr_safe(ctx->mmap_base);
| ^
fs/aio.c: In function 'aio_setup_ring':
fs/aio.c:665:22: error: assignment to 'aio_context_t' {aka 'long unsigned int'} from 'void *' makes integer from pointer without a cast [-Wint-conversion]
665 | ctx->user_id = uaddr_to_user_ptr_safe(ctx->mmap_base);
| ^
fs/aio.c: In function 'get_compat_iocb':
fs/aio.c:2115:26: error: implicit declaration of function '__c_fakeu' [-Wimplicit-function-declaration]
2115 | iocb->aio_data = __c_fakeu(compat_iocb.aio_data);
| ^~~~~~~~~
In file included from include/linux/array_size.h:5,
from include/linux/kernel.h:16,
from fs/aio.c:14:
fs/aio.c: In function '__do_sys_io_cancel':
include/linux/compat.h:200:25: error: implicit declaration of function 'in_compat64_syscall'; did you mean 'in_compat_syscall'? [-Wimplicit-function-declaration]
200 | __c64c_get_user(in_compat64_syscall(), type, x, p, field)
| ^~~~~~~~~~~~~~~~~~~
include/linux/compiler.h:77:45: note: in definition of macro 'unlikely'
77 | # define unlikely(x) __builtin_expect(!!(x), 0)
| ^
include/linux/compat.h:191:13: note: in expansion of macro 'unlikely'
191 | if (unlikely(iscompat)) { \
| ^~~~~~~~
include/linux/compat.h:200:9: note: in expansion of macro '__c64c_get_user'
200 | __c64c_get_user(in_compat64_syscall(), type, x, p, field)
| ^~~~~~~~~~~~~~~
fs/aio.c:2300:22: note: in expansion of macro '__c64_get_user'
2300 | if (unlikely(__c64_get_user(iocb, key, iocb, aio_key)))
| ^~~~~~~~~~~~~~
fs/aio.c:2328:1: warning: label 'out' defined but not used [-Wunused-label]
2328 | out:
| ^~~
In file included from fs/aio.c:20:
fs/aio.c: At top level:
>> include/linux/syscalls.h:293:25: error: conflicting types for 'sys_io_getevents_time32'; have 'long int(aio_context_t, __s32, __s32, struct io_event *, struct old_timespec32 *)' {aka 'long int(long unsigned int, int, int, struct io_event *, struct old_timespec32 *)'}
293 | asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
| ^~~
include/linux/syscalls.h:279:9: note: in expansion of macro '__SYSCALL_DEFINEx'
279 | __SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
| ^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:272:36: note: in expansion of macro 'SYSCALL_DEFINEx'
272 | #define SYSCALL_DEFINE5(name, ...) SYSCALL_DEFINEx(5, SYSCALL_PREP(name), __VA_ARGS__)
| ^~~~~~~~~~~~~~~
fs/aio.c:2465:1: note: in expansion of macro 'SYSCALL_DEFINE5'
2465 | SYSCALL_DEFINE5(io_getevents_time32, aio_context_t, ctx_id,
| ^~~~~~~~~~~~~~~
include/linux/syscalls.h:360:17: note: previous declaration of 'sys_io_getevents_time32' with type 'long int(__u32, __s32, __s32, struct io_event *, struct old_timespec32 *)' {aka 'long int(unsigned int, int, int, struct io_event *, struct old_timespec32 *)'}
360 | asmlinkage long sys_io_getevents_time32(__u32 ctx_id,
| ^~~~~~~~~~~~~~~~~~~~~~~
vim +293 include/linux/syscalls.h
1bd21c6c21e848 Dominik Brodowski 2018-04-05 282
e145242ea0df6b Dominik Brodowski 2018-04-09 283 /*
e145242ea0df6b Dominik Brodowski 2018-04-09 284 * The asmlinkage stub is aliased to a function named __se_sys_*() which
e145242ea0df6b Dominik Brodowski 2018-04-09 285 * sign-extends 32-bit ints to longs whenever needed. The actual work is
e145242ea0df6b Dominik Brodowski 2018-04-09 286 * done within __do_sys_*().
e145242ea0df6b Dominik Brodowski 2018-04-09 287 */
1bd21c6c21e848 Dominik Brodowski 2018-04-05 288 #ifndef __SYSCALL_DEFINEx
bed1ffca022cc8 Frederic Weisbecker 2009-03-13 289 #define __SYSCALL_DEFINEx(x, name, ...) \
bee20031772af3 Arnd Bergmann 2018-06-19 290 __diag_push(); \
bee20031772af3 Arnd Bergmann 2018-06-19 291 __diag_ignore(GCC, 8, "-Wattribute-alias", \
bee20031772af3 Arnd Bergmann 2018-06-19 292 "Type aliasing is used to sanitize syscall arguments");\
83460ec8dcac14 Andi Kleen 2013-11-12 @293 asmlinkage long sys##name(__MAP(x,__SC_DECL,__VA_ARGS__)) \
e145242ea0df6b Dominik Brodowski 2018-04-09 294 __attribute__((alias(__stringify(__se_sys##name)))); \
c9a211951c7c79 Howard McLauchlan 2018-03-21 295 ALLOW_ERROR_INJECTION(sys##name, ERRNO); \
e145242ea0df6b Dominik Brodowski 2018-04-09 296 static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__));\
e145242ea0df6b Dominik Brodowski 2018-04-09 297 asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \
e145242ea0df6b Dominik Brodowski 2018-04-09 298 asmlinkage long __se_sys##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
1a94bc34768e46 Heiko Carstens 2009-01-14 299 { \
e145242ea0df6b Dominik Brodowski 2018-04-09 300 long ret = __do_sys##name(__MAP(x,__SC_CAST,__VA_ARGS__));\
07fe6e00f6cca6 Al Viro 2013-01-21 301 __MAP(x,__SC_TEST,__VA_ARGS__); \
2cf0966683430b Al Viro 2013-01-21 302 __PROTECT(x, ret,__MAP(x,__SC_ARGS,__VA_ARGS__)); \
2cf0966683430b Al Viro 2013-01-21 303 return ret; \
1a94bc34768e46 Heiko Carstens 2009-01-14 304 } \
bee20031772af3 Arnd Bergmann 2018-06-19 305 __diag_pop(); \
e145242ea0df6b Dominik Brodowski 2018-04-09 306 static inline long __do_sys##name(__MAP(x,__SC_DECL,__VA_ARGS__))
1bd21c6c21e848 Dominik Brodowski 2018-04-05 307 #endif /* __SYSCALL_DEFINEx */
1a94bc34768e46 Heiko Carstens 2009-01-14 308
:::::: The code at line 293 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:[~2026-05-21 15:23 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-21 15:23 [scosu-sched:topic/mmap-cap-prot-wip/v6.18 423/1130] include/linux/syscalls.h:293:25: error: conflicting types for 'sys_io_getevents_time32'; have 'long int(aio_context_t, __s32, __s32, struct io_event *, struct old_timespec32 *)' {aka 'long int(long unsigned int, int, int, struct io_event *, struct o 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.