* arch/riscv/include/asm/syscall_wrapper.h:35:14: warning: '__se_sys_userfaultfd' alias between functions of incompatible types 'long int(ulong, ulong, ulong, ulong, ulong, ulong, ulong)' {aka 'long int(long unsigned int, long unsigned int, long uns...
@ 2026-08-18 8:26 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-08-18 8:26 UTC (permalink / raw)
To: Mike Rapoport (Microsoft)
Cc: oe-kbuild-all, linux-kernel, Andrew Morton,
Linux Memory Management List, Christian Brauner (Amutable)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 8d3ae59288f1e7d58d76558a6ee96d533bc5019f
commit: 7bc5e747bba29d5b77b2278e8c696eea0c796706 userfaultfd: merge fs/userfaultfd.c into mm/userfaultfd.c
date: 2 months ago
config: riscv-randconfig-r062-20260818 (https://download.01.org/0day-ci/archive/20260818/202608181601.lxsFodJY-lkp@intel.com/config)
compiler: riscv32-linux-gcc (GCC) 8.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260818/202608181601.lxsFodJY-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
| Fixes: 7bc5e747bba2 ("userfaultfd: merge fs/userfaultfd.c into mm/userfaultfd.c")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202608181601.lxsFodJY-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from include/linux/compat.h:34,
from arch/riscv/include/asm/elf.h:12,
from include/linux/elf.h:6,
from include/linux/module.h:20,
from include/linux/device/driver.h:21,
from include/linux/device.h:32,
from include/linux/blk_types.h:11,
from include/linux/writeback.h:13,
from include/linux/memcontrol.h:23,
from include/linux/rmap.h:12,
from mm/userfaultfd.c:16:
>> arch/riscv/include/asm/syscall_wrapper.h:35:14: warning: '__se_sys_userfaultfd' alias between functions of incompatible types 'long int(ulong, ulong, ulong, ulong, ulong, ulong, ulong)' {aka 'long int(long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int, long unsigned int)'} and 'long int(long int)' [-Wattribute-alias]
static long __se_##prefix##name(ulong, ulong, ulong, ulong, ulong, ulong, \
^~~~~
arch/riscv/include/asm/syscall_wrapper.h:82:2: note: in expansion of macro '__SYSCALL_SE_DEFINEx'
__SYSCALL_SE_DEFINEx(x, sys, name, __VA_ARGS__) \
^~~~~~~~~~~~~~~~~~~~
include/linux/syscalls.h:236:2: note: in expansion of macro '__SYSCALL_DEFINEx'
__SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:225:36: note: in expansion of macro 'SYSCALL_DEFINEx'
#define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
^~~~~~~~~~~~~~~
mm/userfaultfd.c:4475:1: note: in expansion of macro 'SYSCALL_DEFINE1'
SYSCALL_DEFINE1(userfaultfd, int, flags)
^~~~~~~~~~~~~~~
arch/riscv/include/asm/syscall_wrapper.h:41:14: note: aliased declaration here
static long ___se_##prefix##name(__MAP(x,__SC_LONG,__VA_ARGS__))
^~~~~~
arch/riscv/include/asm/syscall_wrapper.h:82:2: note: in expansion of macro '__SYSCALL_SE_DEFINEx'
__SYSCALL_SE_DEFINEx(x, sys, name, __VA_ARGS__) \
^~~~~~~~~~~~~~~~~~~~
include/linux/syscalls.h:236:2: note: in expansion of macro '__SYSCALL_DEFINEx'
__SYSCALL_DEFINEx(x, sname, __VA_ARGS__)
^~~~~~~~~~~~~~~~~
include/linux/syscalls.h:225:36: note: in expansion of macro 'SYSCALL_DEFINEx'
#define SYSCALL_DEFINE1(name, ...) SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
^~~~~~~~~~~~~~~
mm/userfaultfd.c:4475:1: note: in expansion of macro 'SYSCALL_DEFINE1'
SYSCALL_DEFINE1(userfaultfd, int, flags)
^~~~~~~~~~~~~~~
vim +35 arch/riscv/include/asm/syscall_wrapper.h
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 16
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 17 #define __SYSCALL_SE_DEFINEx(x, prefix, name, ...) \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 18 static long __se_##prefix##name(__MAP(x,__SC_LONG,__VA_ARGS__)); \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 19 static long __se_##prefix##name(__MAP(x,__SC_LONG,__VA_ARGS__))
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 20
08d0ce30e0e4fc Sami Tolvanen 2023-07-10 21 #define SC_RISCV_REGS_TO_ARGS(x, ...) \
08d0ce30e0e4fc Sami Tolvanen 2023-07-10 22 __MAP(x,__SC_ARGS \
08d0ce30e0e4fc Sami Tolvanen 2023-07-10 23 ,,regs->orig_a0,,regs->a1,,regs->a2 \
08d0ce30e0e4fc Sami Tolvanen 2023-07-10 24 ,,regs->a3,,regs->a4,,regs->a5,,regs->a6)
08d0ce30e0e4fc Sami Tolvanen 2023-07-10 25
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 26 #else
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 27 /*
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 28 * Use type aliasing to ensure registers a0-a6 are correctly passed to the syscall
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 29 * implementation when >word-size arguments are used.
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 30 */
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 31 #define __SYSCALL_SE_DEFINEx(x, prefix, name, ...) \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 32 __diag_push(); \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 33 __diag_ignore(GCC, 8, "-Wattribute-alias", \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 34 "Type aliasing is used to sanitize syscall arguments"); \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 @35 static long __se_##prefix##name(ulong, ulong, ulong, ulong, ulong, ulong, \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 36 ulong) \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 37 __attribute__((alias(__stringify(___se_##prefix##name)))); \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 38 __diag_pop(); \
653650c468be21 Sami Tolvanen 2024-03-26 39 static long noinline ___se_##prefix##name(__MAP(x,__SC_LONG,__VA_ARGS__)) \
653650c468be21 Sami Tolvanen 2024-03-26 40 __used; \
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 41 static long ___se_##prefix##name(__MAP(x,__SC_LONG,__VA_ARGS__))
a9ad73295cc1e3 Sami Tolvanen 2024-03-11 42
:::::: The code at line 35 was first introduced by commit
:::::: a9ad73295cc1e3af0253eee7d08943b2419444c4 riscv: Fix syscall wrapper for >word-size arguments
:::::: TO: Sami Tolvanen <samitolvanen@google.com>
:::::: CC: Palmer Dabbelt <palmer@rivosinc.com>
--
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-08-18 8:27 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-18 8:26 arch/riscv/include/asm/syscall_wrapper.h:35:14: warning: '__se_sys_userfaultfd' alias between functions of incompatible types 'long int(ulong, ulong, ulong, ulong, ulong, ulong, ulong)' {aka 'long int(long unsigned int, long unsigned int, long uns 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.