The Linux kernel uses 'unsigned long'.
There's no reason to use the typedef '__kernel_ulong_t'.
......
$ syscall='keyctl';
$ find linux/ -type f -name '*.c' \
|xargs pcregrep -Mn "(?s)^[\w_]*SYSCALL_DEFINE.\(${syscall},.*?\)";
linux/security/keys/keyctl.c:1869:
SYSCALL_DEFINE5(keyctl, int, option, unsigned long, arg2, unsigned long, arg3,
unsigned long, arg4, unsigned long, arg5)
linux/security/keys/compat.c:17:
COMPAT_SYSCALL_DEFINE5(keyctl, u32, option,
u32, arg2, u32, arg3, u32, arg4, u32, arg5)
Cc: Eugene Syromyatnikov <evgsyr@gmail.com>
Signed-off-by: Alejandro Colomar <alx.manpages@gmail.com>
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
.B #include <linux/keyctl.h>
.B #include <unistd.h>
.PP
-.BI "long syscall(__NR_keyctl, int " operation ", __kernel_ulong_t " arg2 ,
-.BI " __kernel_ulong_t " arg3 ", __kernel_ulong_t " arg4 ,
-.BI " __kernel_ulong_t " arg5 );
+.BI "long syscall(__NR_keyctl, int " operation ", unsigned long " arg2 ,
+.BI " unsigned long " arg3 ", unsigned long " arg4 ,
+.BI " unsigned long " arg5 );
.fi
.PP
.IR Note :