Module Name: src Committed By: thorpej Date: Sun Apr 26 18:59:48 UTC 2020
Modified Files: src/sys/kern: init_sysent.c syscalls.c syscalls_autoload.c systrace_args.c src/sys/rump/include/rump: rump_syscalls.h src/sys/rump/librump/rumpkern: rump_syscalls.c src/sys/sys: syscall.h syscallargs.h Log Message: Regen for native futex calls. To generate a diff of this commit: cvs rdiff -u -r1.329 -r1.330 src/sys/kern/init_sysent.c cvs rdiff -u -r1.317 -r1.318 src/sys/kern/syscalls.c cvs rdiff -u -r1.34 -r1.35 src/sys/kern/syscalls_autoload.c cvs rdiff -u -r1.36 -r1.37 src/sys/kern/systrace_args.c cvs rdiff -u -r1.116 -r1.117 src/sys/rump/include/rump/rump_syscalls.h cvs rdiff -u -r1.147 -r1.148 src/sys/rump/librump/rumpkern/rump_syscalls.c cvs rdiff -u -r1.311 -r1.312 src/sys/sys/syscall.h cvs rdiff -u -r1.295 -r1.296 src/sys/sys/syscallargs.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/kern/init_sysent.c diff -u src/sys/kern/init_sysent.c:1.329 src/sys/kern/init_sysent.c:1.330 --- src/sys/kern/init_sysent.c:1.329 Wed Apr 22 21:25:17 2020 +++ src/sys/kern/init_sysent.c Sun Apr 26 18:59:47 2020 @@ -1,14 +1,14 @@ -/* $NetBSD: init_sysent.c,v 1.329 2020/04/22 21:25:17 thorpej Exp $ */ +/* $NetBSD: init_sysent.c,v 1.330 2020/04/26 18:59:47 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.302 2020/04/22 21:22:21 thorpej Exp + * created from NetBSD: syscalls.master,v 1.303 2020/04/26 18:53:33 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: init_sysent.c,v 1.329 2020/04/22 21:25:17 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: init_sysent.c,v 1.330 2020/04/26 18:59:47 thorpej Exp $"); #ifdef _KERNEL_OPT #include "opt_modular.h" @@ -2359,14 +2359,20 @@ struct sysent sysent[] = { .sy_call = (sy_call_t *)sys___fhstatvfs190 }, /* 486 = __fhstatvfs190 */ { - .sy_call = sys_nosys, - }, /* 487 = filler */ + ns(struct sys___futex_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)sys___futex + }, /* 487 = __futex */ { - .sy_call = sys_nosys, - }, /* 488 = filler */ + ns(struct sys___futex_set_robust_list_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)sys___futex_set_robust_list + }, /* 488 = __futex_set_robust_list */ { - .sy_call = sys_nosys, - }, /* 489 = filler */ + ns(struct sys___futex_get_robust_list_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)sys___futex_get_robust_list + }, /* 489 = __futex_get_robust_list */ { .sy_call = sys_nosys, }, /* 490 = filler */ Index: src/sys/kern/syscalls.c diff -u src/sys/kern/syscalls.c:1.317 src/sys/kern/syscalls.c:1.318 --- src/sys/kern/syscalls.c:1.317 Wed Apr 22 21:25:17 2020 +++ src/sys/kern/syscalls.c Sun Apr 26 18:59:47 2020 @@ -1,14 +1,14 @@ -/* $NetBSD: syscalls.c,v 1.317 2020/04/22 21:25:17 thorpej Exp $ */ +/* $NetBSD: syscalls.c,v 1.318 2020/04/26 18:59:47 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.302 2020/04/22 21:22:21 thorpej Exp + * created from NetBSD: syscalls.master,v 1.303 2020/04/26 18:53:33 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: syscalls.c,v 1.317 2020/04/22 21:25:17 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: syscalls.c,v 1.318 2020/04/26 18:59:47 thorpej Exp $"); #if defined(_KERNEL_OPT) #ifdef _KERNEL_OPT @@ -536,9 +536,9 @@ const char *const syscallnames[] = { /* 484 */ "__statvfs190", /* 485 */ "__fstatvfs190", /* 486 */ "__fhstatvfs190", - /* 487 */ "# filler", - /* 488 */ "# filler", - /* 489 */ "# filler", + /* 487 */ "__futex", + /* 488 */ "__futex_set_robust_list", + /* 489 */ "__futex_get_robust_list", /* 490 */ "# filler", /* 491 */ "# filler", /* 492 */ "# filler", @@ -1073,9 +1073,9 @@ const char *const altsyscallnames[] = { /* 484 */ "statvfs1", /* 485 */ "fstatvfs1", /* 486 */ "fhstatvfs1", - /* 487 */ NULL, /* filler */ - /* 488 */ NULL, /* filler */ - /* 489 */ NULL, /* filler */ + /* 487 */ NULL, /* __futex */ + /* 488 */ NULL, /* __futex_set_robust_list */ + /* 489 */ NULL, /* __futex_get_robust_list */ /* 490 */ NULL, /* filler */ /* 491 */ NULL, /* filler */ /* 492 */ NULL, /* filler */ Index: src/sys/kern/syscalls_autoload.c diff -u src/sys/kern/syscalls_autoload.c:1.34 src/sys/kern/syscalls_autoload.c:1.35 --- src/sys/kern/syscalls_autoload.c:1.34 Wed Apr 22 21:25:17 2020 +++ src/sys/kern/syscalls_autoload.c Sun Apr 26 18:59:47 2020 @@ -1,14 +1,14 @@ -/* $NetBSD: syscalls_autoload.c,v 1.34 2020/04/22 21:25:17 thorpej Exp $ */ +/* $NetBSD: syscalls_autoload.c,v 1.35 2020/04/26 18:59:47 thorpej Exp $ */ /* * System call autoload table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.302 2020/04/22 21:22:21 thorpej Exp + * created from NetBSD: syscalls.master,v 1.303 2020/04/26 18:53:33 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: syscalls_autoload.c,v 1.34 2020/04/22 21:25:17 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: syscalls_autoload.c,v 1.35 2020/04/26 18:59:47 thorpej Exp $"); #ifdef _KERNEL_OPT #include "opt_modular.h" Index: src/sys/kern/systrace_args.c diff -u src/sys/kern/systrace_args.c:1.36 src/sys/kern/systrace_args.c:1.37 --- src/sys/kern/systrace_args.c:1.36 Wed Apr 22 21:25:17 2020 +++ src/sys/kern/systrace_args.c Sun Apr 26 18:59:47 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: systrace_args.c,v 1.36 2020/04/22 21:25:17 thorpej Exp $ */ +/* $NetBSD: systrace_args.c,v 1.37 2020/04/26 18:59:47 thorpej Exp $ */ /* * System call argument to DTrace register array converstion. @@ -3701,6 +3701,36 @@ systrace_args(register_t sysnum, const v *n_args = 4; break; } + /* sys___futex */ + case 487: { + const struct sys___futex_args *p = params; + uarg[0] = (intptr_t) SCARG(p, uaddr); /* int * */ + iarg[1] = SCARG(p, op); /* int */ + iarg[2] = SCARG(p, val); /* int */ + uarg[3] = (intptr_t) SCARG(p, timeout); /* const struct timespec * */ + uarg[4] = (intptr_t) SCARG(p, uaddr2); /* int * */ + iarg[5] = SCARG(p, val2); /* int */ + iarg[6] = SCARG(p, val3); /* int */ + *n_args = 7; + break; + } + /* sys___futex_set_robust_list */ + case 488: { + const struct sys___futex_set_robust_list_args *p = params; + uarg[0] = (intptr_t) SCARG(p, head); /* void * */ + uarg[1] = SCARG(p, len); /* size_t */ + *n_args = 2; + break; + } + /* sys___futex_get_robust_list */ + case 489: { + const struct sys___futex_get_robust_list_args *p = params; + iarg[0] = SCARG(p, lwpid); /* lwpid_t */ + uarg[1] = (intptr_t) SCARG(p, headp); /* void ** */ + uarg[2] = (intptr_t) SCARG(p, lenp); /* size_t * */ + *n_args = 3; + break; + } default: *n_args = 0; break; @@ -9979,6 +10009,63 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; + /* sys___futex */ + case 487: + switch(ndx) { + case 0: + p = "int *"; + break; + case 1: + p = "int"; + break; + case 2: + p = "int"; + break; + case 3: + p = "const struct timespec *"; + break; + case 4: + p = "int *"; + break; + case 5: + p = "int"; + break; + case 6: + p = "int"; + break; + default: + break; + }; + break; + /* sys___futex_set_robust_list */ + case 488: + switch(ndx) { + case 0: + p = "void *"; + break; + case 1: + p = "size_t"; + break; + default: + break; + }; + break; + /* sys___futex_get_robust_list */ + case 489: + switch(ndx) { + case 0: + p = "lwpid_t"; + break; + case 1: + p = "void **"; + break; + case 2: + p = "size_t *"; + break; + default: + break; + }; + break; default: break; }; @@ -12076,6 +12163,21 @@ systrace_return_setargdesc(int sysnum, i if (ndx == 0 || ndx == 1) p = "int"; break; + /* sys___futex */ + case 487: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sys___futex_set_robust_list */ + case 488: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* sys___futex_get_robust_list */ + case 489: + if (ndx == 0 || ndx == 1) + p = "int"; + break; default: break; }; Index: src/sys/rump/include/rump/rump_syscalls.h diff -u src/sys/rump/include/rump/rump_syscalls.h:1.116 src/sys/rump/include/rump/rump_syscalls.h:1.117 --- src/sys/rump/include/rump/rump_syscalls.h:1.116 Sat Apr 25 15:42:15 2020 +++ src/sys/rump/include/rump/rump_syscalls.h Sun Apr 26 18:59:48 2020 @@ -1,10 +1,10 @@ -/* $NetBSD: rump_syscalls.h,v 1.116 2020/04/25 15:42:15 bouyer Exp $ */ +/* $NetBSD: rump_syscalls.h,v 1.117 2020/04/26 18:59:48 thorpej Exp $ */ /* * System call protos in rump namespace. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.302 2020/04/22 21:22:21 thorpej Exp + * created from NetBSD: syscalls.master,v 1.303 2020/04/26 18:53:33 thorpej Exp */ #ifndef _RUMP_RUMP_SYSCALLS_H_ Index: src/sys/rump/librump/rumpkern/rump_syscalls.c diff -u src/sys/rump/librump/rumpkern/rump_syscalls.c:1.147 src/sys/rump/librump/rumpkern/rump_syscalls.c:1.148 --- src/sys/rump/librump/rumpkern/rump_syscalls.c:1.147 Sat Apr 25 15:42:15 2020 +++ src/sys/rump/librump/rumpkern/rump_syscalls.c Sun Apr 26 18:59:48 2020 @@ -1,10 +1,10 @@ -/* $NetBSD: rump_syscalls.c,v 1.147 2020/04/25 15:42:15 bouyer Exp $ */ +/* $NetBSD: rump_syscalls.c,v 1.148 2020/04/26 18:59:48 thorpej Exp $ */ /* * System call vector and marshalling for rump. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.302 2020/04/22 21:22:21 thorpej Exp + * created from NetBSD: syscalls.master,v 1.303 2020/04/26 18:53:33 thorpej Exp */ #ifdef RUMP_CLIENT @@ -15,7 +15,7 @@ #ifdef __NetBSD__ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: rump_syscalls.c,v 1.147 2020/04/25 15:42:15 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: rump_syscalls.c,v 1.148 2020/04/26 18:59:48 thorpej Exp $"); #include <sys/fstypes.h> #include <sys/proc.h> @@ -8448,17 +8448,14 @@ struct sysent rump_sysent[] = { .sy_call = (sy_call_t *)(void *)rumpns_enosys, }, /* 486 = __fhstatvfs190 */ { - .sy_flags = SYCALL_NOSYS, .sy_call = (sy_call_t *)(void *)rumpns_enosys, - }, /* 487 = filler */ +}, /* 487 = __futex */ { - .sy_flags = SYCALL_NOSYS, .sy_call = (sy_call_t *)(void *)rumpns_enosys, - }, /* 488 = filler */ +}, /* 488 = __futex_set_robust_list */ { - .sy_flags = SYCALL_NOSYS, .sy_call = (sy_call_t *)(void *)rumpns_enosys, - }, /* 489 = filler */ +}, /* 489 = __futex_get_robust_list */ { .sy_flags = SYCALL_NOSYS, .sy_call = (sy_call_t *)(void *)rumpns_enosys, Index: src/sys/sys/syscall.h diff -u src/sys/sys/syscall.h:1.311 src/sys/sys/syscall.h:1.312 --- src/sys/sys/syscall.h:1.311 Wed Apr 22 21:25:17 2020 +++ src/sys/sys/syscall.h Sun Apr 26 18:59:47 2020 @@ -1,10 +1,10 @@ -/* $NetBSD: syscall.h,v 1.311 2020/04/22 21:25:17 thorpej Exp $ */ +/* $NetBSD: syscall.h,v 1.312 2020/04/26 18:59:47 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.302 2020/04/22 21:22:21 thorpej Exp + * created from NetBSD: syscalls.master,v 1.303 2020/04/26 18:53:33 thorpej Exp */ #ifndef _SYS_SYSCALL_H_ @@ -1341,6 +1341,15 @@ /* syscall: "__fhstatvfs190" ret: "int" args: "const void *" "size_t" "struct statvfs *" "int" */ #define SYS___fhstatvfs190 486 -#define SYS_MAXSYSCALL 487 +/* syscall: "__futex" ret: "int" args: "int *" "int" "int" "const struct timespec *" "int *" "int" "int" */ +#define SYS___futex 487 + +/* syscall: "__futex_set_robust_list" ret: "int" args: "void *" "size_t" */ +#define SYS___futex_set_robust_list 488 + +/* syscall: "__futex_get_robust_list" ret: "int" args: "lwpid_t" "void **" "size_t *" */ +#define SYS___futex_get_robust_list 489 + +#define SYS_MAXSYSCALL 490 #define SYS_NSYSENT 512 #endif /* _SYS_SYSCALL_H_ */ Index: src/sys/sys/syscallargs.h diff -u src/sys/sys/syscallargs.h:1.295 src/sys/sys/syscallargs.h:1.296 --- src/sys/sys/syscallargs.h:1.295 Wed Apr 22 21:25:17 2020 +++ src/sys/sys/syscallargs.h Sun Apr 26 18:59:47 2020 @@ -1,10 +1,10 @@ -/* $NetBSD: syscallargs.h,v 1.295 2020/04/22 21:25:17 thorpej Exp $ */ +/* $NetBSD: syscallargs.h,v 1.296 2020/04/26 18:59:47 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.302 2020/04/22 21:22:21 thorpej Exp + * created from NetBSD: syscalls.master,v 1.303 2020/04/26 18:53:33 thorpej Exp */ #ifndef _SYS_SYSCALLARGS_H_ @@ -3175,6 +3175,36 @@ struct sys___fhstatvfs190_args { }; check_syscall_args(sys___fhstatvfs190) +#ifndef RUMP_CLIENT +struct sys___futex_args { + syscallarg(int *) uaddr; + syscallarg(int) op; + syscallarg(int) val; + syscallarg(const struct timespec *) timeout; + syscallarg(int *) uaddr2; + syscallarg(int) val2; + syscallarg(int) val3; +}; +check_syscall_args(sys___futex) +#endif /* !RUMP_CLIENT */ + +#ifndef RUMP_CLIENT +struct sys___futex_set_robust_list_args { + syscallarg(void *) head; + syscallarg(size_t) len; +}; +check_syscall_args(sys___futex_set_robust_list) +#endif /* !RUMP_CLIENT */ + +#ifndef RUMP_CLIENT +struct sys___futex_get_robust_list_args { + syscallarg(lwpid_t) lwpid; + syscallarg(void **) headp; + syscallarg(size_t *) lenp; +}; +check_syscall_args(sys___futex_get_robust_list) +#endif /* !RUMP_CLIENT */ + /* * System call prototypes. */ @@ -4057,5 +4087,11 @@ int sys___fstatvfs190(struct lwp *, cons int sys___fhstatvfs190(struct lwp *, const struct sys___fhstatvfs190_args *, register_t *); +int sys___futex(struct lwp *, const struct sys___futex_args *, register_t *); + +int sys___futex_set_robust_list(struct lwp *, const struct sys___futex_set_robust_list_args *, register_t *); + +int sys___futex_get_robust_list(struct lwp *, const struct sys___futex_get_robust_list_args *, register_t *); + #endif /* !RUMP_CLIENT */ #endif /* _SYS_SYSCALLARGS_H_ */