All of lore.kernel.org
 help / color / mirror / Atom feed
* [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.