Module Name: src
Committed By: christos
Date: Fri Aug 18 19:42:06 UTC 2023
Modified Files:
src/sys/compat/linux/arch/aarch64: linux_syscall.h linux_syscallargs.h
linux_syscalls.c linux_sysent.c linux_systrace_args.c
src/sys/compat/linux/arch/alpha: linux_syscall.h linux_syscallargs.h
linux_syscalls.c linux_sysent.c
src/sys/compat/linux/arch/amd64: linux_syscall.h linux_syscallargs.h
linux_syscalls.c linux_sysent.c linux_systrace_args.c
src/sys/compat/linux/arch/arm: linux_syscall.h linux_syscallargs.h
linux_syscalls.c linux_sysent.c linux_systrace_args.c
src/sys/compat/linux/arch/i386: linux_syscall.h linux_syscallargs.h
linux_syscalls.c linux_sysent.c linux_systrace_args.c
src/sys/compat/linux/arch/mips: linux_syscall.h linux_syscallargs.h
linux_syscalls.c linux_sysent.c
src/sys/compat/linux/arch/powerpc: linux_syscall.h linux_syscallargs.h
linux_syscalls.c linux_sysent.c
Log Message:
regen
To generate a diff of this commit:
cvs rdiff -u -r1.8 -r1.9 src/sys/compat/linux/arch/aarch64/linux_syscall.h \
src/sys/compat/linux/arch/aarch64/linux_syscallargs.h \
src/sys/compat/linux/arch/aarch64/linux_syscalls.c \
src/sys/compat/linux/arch/aarch64/linux_sysent.c \
src/sys/compat/linux/arch/aarch64/linux_systrace_args.c
cvs rdiff -u -r1.117 -r1.118 src/sys/compat/linux/arch/alpha/linux_syscall.h \
src/sys/compat/linux/arch/alpha/linux_sysent.c
cvs rdiff -u -r1.116 -r1.117 \
src/sys/compat/linux/arch/alpha/linux_syscallargs.h
cvs rdiff -u -r1.118 -r1.119 src/sys/compat/linux/arch/alpha/linux_syscalls.c
cvs rdiff -u -r1.79 -r1.80 src/sys/compat/linux/arch/amd64/linux_syscall.h \
src/sys/compat/linux/arch/amd64/linux_syscallargs.h \
src/sys/compat/linux/arch/amd64/linux_syscalls.c \
src/sys/compat/linux/arch/amd64/linux_sysent.c
cvs rdiff -u -r1.23 -r1.24 \
src/sys/compat/linux/arch/amd64/linux_systrace_args.c
cvs rdiff -u -r1.90 -r1.91 src/sys/compat/linux/arch/arm/linux_syscall.h \
src/sys/compat/linux/arch/arm/linux_syscallargs.h \
src/sys/compat/linux/arch/arm/linux_syscalls.c \
src/sys/compat/linux/arch/arm/linux_sysent.c
cvs rdiff -u -r1.23 -r1.24 \
src/sys/compat/linux/arch/arm/linux_systrace_args.c
cvs rdiff -u -r1.124 -r1.125 src/sys/compat/linux/arch/i386/linux_syscall.h \
src/sys/compat/linux/arch/i386/linux_syscallargs.h \
src/sys/compat/linux/arch/i386/linux_sysent.c
cvs rdiff -u -r1.125 -r1.126 src/sys/compat/linux/arch/i386/linux_syscalls.c
cvs rdiff -u -r1.19 -r1.20 \
src/sys/compat/linux/arch/i386/linux_systrace_args.c
cvs rdiff -u -r1.88 -r1.89 src/sys/compat/linux/arch/mips/linux_syscall.h
cvs rdiff -u -r1.87 -r1.88 src/sys/compat/linux/arch/mips/linux_syscallargs.h \
src/sys/compat/linux/arch/mips/linux_syscalls.c \
src/sys/compat/linux/arch/mips/linux_sysent.c
cvs rdiff -u -r1.94 -r1.95 src/sys/compat/linux/arch/powerpc/linux_syscall.h \
src/sys/compat/linux/arch/powerpc/linux_sysent.c
cvs rdiff -u -r1.93 -r1.94 \
src/sys/compat/linux/arch/powerpc/linux_syscallargs.h \
src/sys/compat/linux/arch/powerpc/linux_syscalls.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/compat/linux/arch/aarch64/linux_syscall.h
diff -u src/sys/compat/linux/arch/aarch64/linux_syscall.h:1.8 src/sys/compat/linux/arch/aarch64/linux_syscall.h:1.9
--- src/sys/compat/linux/arch/aarch64/linux_syscall.h:1.8 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/aarch64/linux_syscall.h Fri Aug 18 15:42:05 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.8 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.9 2023/08/18 19:42:05 christos Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.9 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.10 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -222,6 +222,9 @@
/* syscall: "exit_group" ret: "int" args: "int" */
#define LINUX_SYS_exit_group 94
+/* syscall: "waitid" ret: "int" args: "int" "id_t" "linux_siginfo_t *" "int" "struct rusage50 *" */
+#define LINUX_SYS_waitid 95
+
/* syscall: "set_tid_address" ret: "int" args: "int *" */
#define LINUX_SYS_set_tid_address 96
Index: src/sys/compat/linux/arch/aarch64/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/aarch64/linux_syscallargs.h:1.8 src/sys/compat/linux/arch/aarch64/linux_syscallargs.h:1.9
--- src/sys/compat/linux/arch/aarch64/linux_syscallargs.h:1.8 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/aarch64/linux_syscallargs.h Fri Aug 18 15:42:05 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.8 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.9 2023/08/18 19:42:05 christos Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.9 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.10 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -427,6 +427,15 @@ struct linux_sys_exit_group_args {
};
check_syscall_args(linux_sys_exit_group)
+struct linux_sys_waitid_args {
+ syscallarg(int) idtype;
+ syscallarg(id_t) id;
+ syscallarg(linux_siginfo_t *) infop;
+ syscallarg(int) options;
+ syscallarg(struct rusage50 *) rusage;
+};
+check_syscall_args(linux_sys_waitid)
+
struct linux_sys_set_tid_address_args {
syscallarg(int *) tid;
};
@@ -1179,6 +1188,8 @@ int linux_sys_exit(struct lwp *, const s
int linux_sys_exit_group(struct lwp *, const struct linux_sys_exit_group_args *, register_t *);
+int linux_sys_waitid(struct lwp *, const struct linux_sys_waitid_args *, register_t *);
+
int linux_sys_set_tid_address(struct lwp *, const struct linux_sys_set_tid_address_args *, register_t *);
int linux_sys_futex(struct lwp *, const struct linux_sys_futex_args *, register_t *);
Index: src/sys/compat/linux/arch/aarch64/linux_syscalls.c
diff -u src/sys/compat/linux/arch/aarch64/linux_syscalls.c:1.8 src/sys/compat/linux/arch/aarch64/linux_syscalls.c:1.9
--- src/sys/compat/linux/arch/aarch64/linux_syscalls.c:1.8 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/aarch64/linux_syscalls.c Fri Aug 18 15:42:05 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.8 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.9 2023/08/18 19:42:05 christos Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.9 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.10 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.8 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.9 2023/08/18 19:42:05 christos Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@@ -135,7 +135,7 @@ const char *const linux_syscallnames[] =
/* 92 */ "personality",
/* 93 */ "exit",
/* 94 */ "exit_group",
- /* 95 */ "#95 (unimplemented waitid)",
+ /* 95 */ "waitid",
/* 96 */ "set_tid_address",
/* 97 */ "#97 (unimplemented unshare)",
/* 98 */ "futex",
@@ -673,7 +673,7 @@ const char *const altlinux_syscallnames[
/* 92 */ NULL, /* personality */
/* 93 */ NULL, /* exit */
/* 94 */ NULL, /* exit_group */
- /* 95 */ NULL, /* unimplemented waitid */
+ /* 95 */ NULL, /* waitid */
/* 96 */ NULL, /* set_tid_address */
/* 97 */ NULL, /* unimplemented unshare */
/* 98 */ NULL, /* futex */
Index: src/sys/compat/linux/arch/aarch64/linux_sysent.c
diff -u src/sys/compat/linux/arch/aarch64/linux_sysent.c:1.8 src/sys/compat/linux/arch/aarch64/linux_sysent.c:1.9
--- src/sys/compat/linux/arch/aarch64/linux_sysent.c:1.8 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/aarch64/linux_sysent.c Fri Aug 18 15:42:05 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.8 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.9 2023/08/18 19:42:05 christos Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.9 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.10 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.8 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.9 2023/08/18 19:42:05 christos Exp $");
#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
@@ -448,8 +448,10 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_exit_group
}, /* 94 = exit_group */
{
- .sy_call = linux_sys_nosys,
- }, /* 95 = filler */
+ ns(struct linux_sys_waitid_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_waitid
+ }, /* 95 = waitid */
{
ns(struct linux_sys_set_tid_address_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/aarch64/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/aarch64/linux_systrace_args.c:1.8 src/sys/compat/linux/arch/aarch64/linux_systrace_args.c:1.9
--- src/sys/compat/linux/arch/aarch64/linux_systrace_args.c:1.8 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/aarch64/linux_systrace_args.c Fri Aug 18 15:42:05 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_systrace_args.c,v 1.8 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.9 2023/08/18 19:42:05 christos Exp $ */
/*
* System call argument to DTrace register array conversion.
@@ -633,6 +633,17 @@ systrace_args(register_t sysnum, const v
*n_args = 1;
break;
}
+ /* linux_sys_waitid */
+ case 95: {
+ const struct linux_sys_waitid_args *p = params;
+ iarg[0] = SCARG(p, idtype); /* int */
+ iarg[1] = SCARG(p, id); /* id_t */
+ uarg[2] = (intptr_t) SCARG(p, infop); /* linux_siginfo_t * */
+ iarg[3] = SCARG(p, options); /* int */
+ uarg[4] = (intptr_t) SCARG(p, rusage); /* struct rusage50 * */
+ *n_args = 5;
+ break;
+ }
/* linux_sys_set_tid_address */
case 96: {
const struct linux_sys_set_tid_address_args *p = params;
@@ -2813,6 +2824,28 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux_sys_waitid */
+ case 95:
+ switch(ndx) {
+ case 0:
+ p = "int";
+ break;
+ case 1:
+ p = "id_t";
+ break;
+ case 2:
+ p = "linux_siginfo_t *";
+ break;
+ case 3:
+ p = "int";
+ break;
+ case 4:
+ p = "struct rusage50 *";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux_sys_set_tid_address */
case 96:
switch(ndx) {
@@ -4967,6 +5000,11 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux_sys_waitid */
+ case 95:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux_sys_set_tid_address */
case 96:
if (ndx == 0 || ndx == 1)
Index: src/sys/compat/linux/arch/alpha/linux_syscall.h
diff -u src/sys/compat/linux/arch/alpha/linux_syscall.h:1.117 src/sys/compat/linux/arch/alpha/linux_syscall.h:1.118
--- src/sys/compat/linux/arch/alpha/linux_syscall.h:1.117 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/alpha/linux_syscall.h Fri Aug 18 15:42:05 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.117 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.118 2023/08/18 19:42:05 christos Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.104 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.105 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -675,6 +675,9 @@
/* syscall: "fstat64" ret: "int" args: "int" "struct linux_stat64 *" */
#define LINUX_SYS_fstat64 427
+/* syscall: "waitid" ret: "int" args: "int" "id_t" "linux_siginfo_t *" "int" "struct rusage50 *" */
+#define LINUX_SYS_waitid 438
+
/* syscall: "openat" ret: "int" args: "int" "const char *" "int" "..." */
#define LINUX_SYS_openat 450
Index: src/sys/compat/linux/arch/alpha/linux_sysent.c
diff -u src/sys/compat/linux/arch/alpha/linux_sysent.c:1.117 src/sys/compat/linux/arch/alpha/linux_sysent.c:1.118
--- src/sys/compat/linux/arch/alpha/linux_sysent.c:1.117 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/alpha/linux_sysent.c Fri Aug 18 15:42:05 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.117 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.118 2023/08/18 19:42:05 christos Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.104 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.105 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.117 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.118 2023/08/18 19:42:05 christos Exp $");
#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
@@ -1757,8 +1757,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 437 = filler */
{
- .sy_call = linux_sys_nosys,
- }, /* 438 = filler */
+ ns(struct linux_sys_waitid_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_waitid
+ }, /* 438 = waitid */
{
.sy_call = linux_sys_nosys,
}, /* 439 = filler */
Index: src/sys/compat/linux/arch/alpha/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/alpha/linux_syscallargs.h:1.116 src/sys/compat/linux/arch/alpha/linux_syscallargs.h:1.117
--- src/sys/compat/linux/arch/alpha/linux_syscallargs.h:1.116 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/alpha/linux_syscallargs.h Fri Aug 18 15:42:05 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.116 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.117 2023/08/18 19:42:05 christos Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.104 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.105 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -1060,6 +1060,15 @@ struct linux_sys_fstat64_args {
};
check_syscall_args(linux_sys_fstat64)
+struct linux_sys_waitid_args {
+ syscallarg(int) idtype;
+ syscallarg(id_t) id;
+ syscallarg(linux_siginfo_t *) infop;
+ syscallarg(int) options;
+ syscallarg(struct rusage50 *) rusage;
+};
+check_syscall_args(linux_sys_waitid)
+
struct linux_sys_openat_args {
syscallarg(int) fd;
syscallarg(const char *) path;
@@ -1753,6 +1762,8 @@ int linux_sys_lstat64(struct lwp *, cons
int linux_sys_fstat64(struct lwp *, const struct linux_sys_fstat64_args *, register_t *);
+int linux_sys_waitid(struct lwp *, const struct linux_sys_waitid_args *, register_t *);
+
int linux_sys_openat(struct lwp *, const struct linux_sys_openat_args *, register_t *);
int sys_mkdirat(struct lwp *, const struct sys_mkdirat_args *, register_t *);
Index: src/sys/compat/linux/arch/alpha/linux_syscalls.c
diff -u src/sys/compat/linux/arch/alpha/linux_syscalls.c:1.118 src/sys/compat/linux/arch/alpha/linux_syscalls.c:1.119
--- src/sys/compat/linux/arch/alpha/linux_syscalls.c:1.118 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/alpha/linux_syscalls.c Fri Aug 18 15:42:05 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.118 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.119 2023/08/18 19:42:05 christos Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.104 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.105 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.118 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.119 2023/08/18 19:42:05 christos Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@@ -497,7 +497,7 @@ const char *const linux_syscallnames[] =
/* 435 */ "#435 (unimplemented mq_timedreceive)",
/* 436 */ "#436 (unimplemented mq_notify)",
/* 437 */ "#437 (unimplemented mq_getsetattr)",
- /* 438 */ "#438 (unimplemented waitid)",
+ /* 438 */ "waitid",
/* 439 */ "#439 (unimplemented add_key)",
/* 440 */ "#440 (unimplemented request_key)",
/* 441 */ "#441 (unimplemented keyctl)",
@@ -1550,7 +1550,7 @@ const char *const altlinux_syscallnames[
/* 435 */ NULL, /* unimplemented mq_timedreceive */
/* 436 */ NULL, /* unimplemented mq_notify */
/* 437 */ NULL, /* unimplemented mq_getsetattr */
- /* 438 */ NULL, /* unimplemented waitid */
+ /* 438 */ NULL, /* waitid */
/* 439 */ NULL, /* unimplemented add_key */
/* 440 */ NULL, /* unimplemented request_key */
/* 441 */ NULL, /* unimplemented keyctl */
Index: src/sys/compat/linux/arch/amd64/linux_syscall.h
diff -u src/sys/compat/linux/arch/amd64/linux_syscall.h:1.79 src/sys/compat/linux/arch/amd64/linux_syscall.h:1.80
--- src/sys/compat/linux/arch/amd64/linux_syscall.h:1.79 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/amd64/linux_syscall.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.79 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.80 2023/08/18 19:42:06 christos Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.70 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.71 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -621,6 +621,9 @@
/* syscall: "utimes" ret: "int" args: "const char *" "const struct timeval50 *" */
#define LINUX_SYS_utimes 235
+/* syscall: "waitid" ret: "int" args: "int" "id_t" "linux_siginfo_t *" "int" "struct rusage50 *" */
+#define LINUX_SYS_waitid 247
+
/* syscall: "openat" ret: "int" args: "int" "const char *" "int" "..." */
#define LINUX_SYS_openat 257
Index: src/sys/compat/linux/arch/amd64/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/amd64/linux_syscallargs.h:1.79 src/sys/compat/linux/arch/amd64/linux_syscallargs.h:1.80
--- src/sys/compat/linux/arch/amd64/linux_syscallargs.h:1.79 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/amd64/linux_syscallargs.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.79 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.80 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.70 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.71 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -950,6 +950,15 @@ check_syscall_args(linux_sys_tgkill)
struct compat_50_sys_utimes_args;
+struct linux_sys_waitid_args {
+ syscallarg(int) idtype;
+ syscallarg(id_t) id;
+ syscallarg(linux_siginfo_t *) infop;
+ syscallarg(int) options;
+ syscallarg(struct rusage50 *) rusage;
+};
+check_syscall_args(linux_sys_waitid)
+
struct linux_sys_openat_args {
syscallarg(int) fd;
syscallarg(const char *) path;
@@ -1616,6 +1625,8 @@ int linux_sys_tgkill(struct lwp *, const
int compat_50_sys_utimes(struct lwp *, const struct compat_50_sys_utimes_args *, register_t *);
+int linux_sys_waitid(struct lwp *, const struct linux_sys_waitid_args *, register_t *);
+
int linux_sys_openat(struct lwp *, const struct linux_sys_openat_args *, register_t *);
int sys_mkdirat(struct lwp *, const struct sys_mkdirat_args *, register_t *);
Index: src/sys/compat/linux/arch/amd64/linux_syscalls.c
diff -u src/sys/compat/linux/arch/amd64/linux_syscalls.c:1.79 src/sys/compat/linux/arch/amd64/linux_syscalls.c:1.80
--- src/sys/compat/linux/arch/amd64/linux_syscalls.c:1.79 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/amd64/linux_syscalls.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.79 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.80 2023/08/18 19:42:06 christos Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.70 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.71 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.79 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.80 2023/08/18 19:42:06 christos Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@@ -314,7 +314,7 @@ const char *const linux_syscallnames[] =
/* 244 */ "#244 (unimplemented mq_notify)",
/* 245 */ "#245 (unimplemented mq_getsetattr)",
/* 246 */ "#246 (unimplemented kexec_load)",
- /* 247 */ "#247 (unimplemented waitid)",
+ /* 247 */ "waitid",
/* 248 */ "#248 (unimplemented add_key)",
/* 249 */ "#249 (unimplemented request_key)",
/* 250 */ "#250 (unimplemented keyctl)",
@@ -858,7 +858,7 @@ const char *const altlinux_syscallnames[
/* 244 */ NULL, /* unimplemented mq_notify */
/* 245 */ NULL, /* unimplemented mq_getsetattr */
/* 246 */ NULL, /* unimplemented kexec_load */
- /* 247 */ NULL, /* unimplemented waitid */
+ /* 247 */ NULL, /* waitid */
/* 248 */ NULL, /* unimplemented add_key */
/* 249 */ NULL, /* unimplemented request_key */
/* 250 */ NULL, /* unimplemented keyctl */
Index: src/sys/compat/linux/arch/amd64/linux_sysent.c
diff -u src/sys/compat/linux/arch/amd64/linux_sysent.c:1.79 src/sys/compat/linux/arch/amd64/linux_sysent.c:1.80
--- src/sys/compat/linux/arch/amd64/linux_sysent.c:1.79 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/amd64/linux_sysent.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.79 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.80 2023/08/18 19:42:06 christos Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.70 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.71 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.79 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.80 2023/08/18 19:42:06 christos Exp $");
#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
@@ -1147,8 +1147,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 246 = filler */
{
- .sy_call = linux_sys_nosys,
- }, /* 247 = filler */
+ ns(struct linux_sys_waitid_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_waitid
+ }, /* 247 = waitid */
{
.sy_call = linux_sys_nosys,
}, /* 248 = filler */
Index: src/sys/compat/linux/arch/amd64/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/amd64/linux_systrace_args.c:1.23 src/sys/compat/linux/arch/amd64/linux_systrace_args.c:1.24
--- src/sys/compat/linux/arch/amd64/linux_systrace_args.c:1.23 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/amd64/linux_systrace_args.c Fri Aug 18 15:42:06 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_systrace_args.c,v 1.23 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.24 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument to DTrace register array conversion.
@@ -1654,6 +1654,17 @@ systrace_args(register_t sysnum, const v
*n_args = 2;
break;
}
+ /* linux_sys_waitid */
+ case 247: {
+ const struct linux_sys_waitid_args *p = params;
+ iarg[0] = SCARG(p, idtype); /* int */
+ iarg[1] = SCARG(p, id); /* id_t */
+ uarg[2] = (intptr_t) SCARG(p, infop); /* linux_siginfo_t * */
+ iarg[3] = SCARG(p, options); /* int */
+ uarg[4] = (intptr_t) SCARG(p, rusage); /* struct rusage50 * */
+ *n_args = 5;
+ break;
+ }
/* linux_sys_openat */
case 257: {
const struct linux_sys_openat_args *p = params;
@@ -4734,6 +4745,28 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux_sys_waitid */
+ case 247:
+ switch(ndx) {
+ case 0:
+ p = "int";
+ break;
+ case 1:
+ p = "id_t";
+ break;
+ case 2:
+ p = "linux_siginfo_t *";
+ break;
+ case 3:
+ p = "int";
+ break;
+ case 4:
+ p = "struct rusage50 *";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux_sys_openat */
case 257:
switch(ndx) {
@@ -6376,6 +6409,11 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux_sys_waitid */
+ case 247:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux_sys_openat */
case 257:
if (ndx == 0 || ndx == 1)
Index: src/sys/compat/linux/arch/arm/linux_syscall.h
diff -u src/sys/compat/linux/arch/arm/linux_syscall.h:1.90 src/sys/compat/linux/arch/arm/linux_syscall.h:1.91
--- src/sys/compat/linux/arch/arm/linux_syscall.h:1.90 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/arm/linux_syscall.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.90 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.91 2023/08/18 19:42:06 christos Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -679,6 +679,9 @@
/* syscall: "fadvise64_64" ret: "int" args: "int" "off_t" "off_t" "int" */
#define LINUX_SYS_fadvise64_64 270
+/* syscall: "waitid" ret: "int" args: "int" "id_t" "linux_siginfo_t *" "int" "struct rusage50 *" */
+#define LINUX_SYS_waitid 280
+
/* syscall: "openat" ret: "int" args: "int" "const char *" "int" "..." */
#define LINUX_SYS_openat 322
Index: src/sys/compat/linux/arch/arm/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.90 src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.91
--- src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.90 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/arm/linux_syscallargs.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.90 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.91 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -1024,6 +1024,15 @@ struct linux_sys_fadvise64_64_args {
};
check_syscall_args(linux_sys_fadvise64_64)
+struct linux_sys_waitid_args {
+ syscallarg(int) idtype;
+ syscallarg(id_t) id;
+ syscallarg(linux_siginfo_t *) infop;
+ syscallarg(int) options;
+ syscallarg(struct rusage50 *) rusage;
+};
+check_syscall_args(linux_sys_waitid)
+
struct linux_sys_openat_args {
syscallarg(int) fd;
syscallarg(const char *) path;
@@ -1705,6 +1714,8 @@ int compat_50_sys_utimes(struct lwp *, c
int linux_sys_fadvise64_64(struct lwp *, const struct linux_sys_fadvise64_64_args *, register_t *);
+int linux_sys_waitid(struct lwp *, const struct linux_sys_waitid_args *, register_t *);
+
int linux_sys_openat(struct lwp *, const struct linux_sys_openat_args *, register_t *);
int sys_mkdirat(struct lwp *, const struct sys_mkdirat_args *, register_t *);
Index: src/sys/compat/linux/arch/arm/linux_syscalls.c
diff -u src/sys/compat/linux/arch/arm/linux_syscalls.c:1.90 src/sys/compat/linux/arch/arm/linux_syscalls.c:1.91
--- src/sys/compat/linux/arch/arm/linux_syscalls.c:1.90 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/arm/linux_syscalls.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.90 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.91 2023/08/18 19:42:06 christos Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.90 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.91 2023/08/18 19:42:06 christos Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -315,7 +315,7 @@ const char *const linux_syscallnames[] =
/* 277 */ "#277 (unimplemented mq_timedreceive)",
/* 278 */ "#278 (unimplemented mq_notify)",
/* 279 */ "#279 (unimplemented mq_getsetattr)",
- /* 280 */ "#280 (unimplemented waitid)",
+ /* 280 */ "waitid",
/* 281 */ "#281 (unimplemented socket)",
/* 282 */ "#282 (unimplemented bind)",
/* 283 */ "#283 (unimplemented connect)",
@@ -837,7 +837,7 @@ const char *const altlinux_syscallnames[
/* 277 */ NULL, /* unimplemented mq_timedreceive */
/* 278 */ NULL, /* unimplemented mq_notify */
/* 279 */ NULL, /* unimplemented mq_getsetattr */
- /* 280 */ NULL, /* unimplemented waitid */
+ /* 280 */ NULL, /* waitid */
/* 281 */ NULL, /* unimplemented socket */
/* 282 */ NULL, /* unimplemented bind */
/* 283 */ NULL, /* unimplemented connect */
Index: src/sys/compat/linux/arch/arm/linux_sysent.c
diff -u src/sys/compat/linux/arch/arm/linux_sysent.c:1.90 src/sys/compat/linux/arch/arm/linux_sysent.c:1.91
--- src/sys/compat/linux/arch/arm/linux_sysent.c:1.90 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/arm/linux_sysent.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.90 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.91 2023/08/18 19:42:06 christos Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.90 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.91 2023/08/18 19:42:06 christos Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1217,8 +1217,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 279 = filler */
{
- .sy_call = linux_sys_nosys,
- }, /* 280 = filler */
+ ns(struct linux_sys_waitid_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_waitid
+ }, /* 280 = waitid */
{
.sy_call = linux_sys_nosys,
}, /* 281 = filler */
Index: src/sys/compat/linux/arch/arm/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.23 src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.24
--- src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.23 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/arm/linux_systrace_args.c Fri Aug 18 15:42:06 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_systrace_args.c,v 1.23 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.24 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument to DTrace register array conversion.
@@ -1753,6 +1753,17 @@ systrace_args(register_t sysnum, const v
*n_args = 4;
break;
}
+ /* linux_sys_waitid */
+ case 280: {
+ const struct linux_sys_waitid_args *p = params;
+ iarg[0] = SCARG(p, idtype); /* int */
+ iarg[1] = SCARG(p, id); /* id_t */
+ uarg[2] = (intptr_t) SCARG(p, infop); /* linux_siginfo_t * */
+ iarg[3] = SCARG(p, options); /* int */
+ uarg[4] = (intptr_t) SCARG(p, rusage); /* struct rusage50 * */
+ *n_args = 5;
+ break;
+ }
/* linux_sys_openat */
case 322: {
const struct linux_sys_openat_args *p = params;
@@ -4937,6 +4948,28 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux_sys_waitid */
+ case 280:
+ switch(ndx) {
+ case 0:
+ p = "int";
+ break;
+ case 1:
+ p = "id_t";
+ break;
+ case 2:
+ p = "linux_siginfo_t *";
+ break;
+ case 3:
+ p = "int";
+ break;
+ case 4:
+ p = "struct rusage50 *";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux_sys_openat */
case 322:
switch(ndx) {
@@ -6645,6 +6678,11 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux_sys_waitid */
+ case 280:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux_sys_openat */
case 322:
if (ndx == 0 || ndx == 1)
Index: src/sys/compat/linux/arch/i386/linux_syscall.h
diff -u src/sys/compat/linux/arch/i386/linux_syscall.h:1.124 src/sys/compat/linux/arch/i386/linux_syscall.h:1.125
--- src/sys/compat/linux/arch/i386/linux_syscall.h:1.124 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/i386/linux_syscall.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.124 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.125 2023/08/18 19:42:06 christos Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.132 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.133 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -701,6 +701,9 @@
/* syscall: "fadvise64_64" ret: "int" args: "int" "off_t" "off_t" "int" */
#define LINUX_SYS_fadvise64_64 272
+/* syscall: "waitid" ret: "int" args: "int" "id_t" "linux_siginfo_t *" "int" "struct rusage50 *" */
+#define LINUX_SYS_waitid 284
+
/* syscall: "openat" ret: "int" args: "int" "const char *" "int" "..." */
#define LINUX_SYS_openat 295
Index: src/sys/compat/linux/arch/i386/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/i386/linux_syscallargs.h:1.124 src/sys/compat/linux/arch/i386/linux_syscallargs.h:1.125
--- src/sys/compat/linux/arch/i386/linux_syscallargs.h:1.124 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/i386/linux_syscallargs.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.124 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.125 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.132 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.133 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -1071,6 +1071,15 @@ struct linux_sys_fadvise64_64_args {
};
check_syscall_args(linux_sys_fadvise64_64)
+struct linux_sys_waitid_args {
+ syscallarg(int) idtype;
+ syscallarg(id_t) id;
+ syscallarg(linux_siginfo_t *) infop;
+ syscallarg(int) options;
+ syscallarg(struct rusage50 *) rusage;
+};
+check_syscall_args(linux_sys_waitid)
+
struct linux_sys_openat_args {
syscallarg(int) fd;
syscallarg(const char *) path;
@@ -1739,6 +1748,8 @@ int compat_50_sys_utimes(struct lwp *, c
int linux_sys_fadvise64_64(struct lwp *, const struct linux_sys_fadvise64_64_args *, register_t *);
+int linux_sys_waitid(struct lwp *, const struct linux_sys_waitid_args *, register_t *);
+
int linux_sys_openat(struct lwp *, const struct linux_sys_openat_args *, register_t *);
int sys_mkdirat(struct lwp *, const struct sys_mkdirat_args *, register_t *);
Index: src/sys/compat/linux/arch/i386/linux_sysent.c
diff -u src/sys/compat/linux/arch/i386/linux_sysent.c:1.124 src/sys/compat/linux/arch/i386/linux_sysent.c:1.125
--- src/sys/compat/linux/arch/i386/linux_sysent.c:1.124 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/i386/linux_sysent.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.124 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.125 2023/08/18 19:42:06 christos Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.132 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.133 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.124 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.125 2023/08/18 19:42:06 christos Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1242,8 +1242,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 283 = filler */
{
- .sy_call = linux_sys_nosys,
- }, /* 284 = filler */
+ ns(struct linux_sys_waitid_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_waitid
+ }, /* 284 = waitid */
{
.sy_call = linux_sys_nosys,
}, /* 285 = filler */
Index: src/sys/compat/linux/arch/i386/linux_syscalls.c
diff -u src/sys/compat/linux/arch/i386/linux_syscalls.c:1.125 src/sys/compat/linux/arch/i386/linux_syscalls.c:1.126
--- src/sys/compat/linux/arch/i386/linux_syscalls.c:1.125 Sat Jul 29 11:05:45 2023
+++ src/sys/compat/linux/arch/i386/linux_syscalls.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.125 2023/07/29 15:05:45 christos Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.126 2023/08/18 19:42:06 christos Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.132 2023/07/29 15:04:28 christos Exp
+ * created from NetBSD: syscalls.master,v 1.133 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.125 2023/07/29 15:05:45 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.126 2023/08/18 19:42:06 christos Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -318,7 +318,7 @@ const char *const linux_syscallnames[] =
/* 281 */ "#281 (unimplemented mq_notify)",
/* 282 */ "#282 (unimplemented mq_getsetattr)",
/* 283 */ "#283 (unimplemented sys_kexec_load)",
- /* 284 */ "#284 (unimplemented waitid)",
+ /* 284 */ "waitid",
/* 285 */ "#285 (unimplemented / * unused * /)",
/* 286 */ "#286 (unimplemented add_key)",
/* 287 */ "#287 (unimplemented request_key)",
@@ -840,7 +840,7 @@ const char *const altlinux_syscallnames[
/* 281 */ NULL, /* unimplemented mq_notify */
/* 282 */ NULL, /* unimplemented mq_getsetattr */
/* 283 */ NULL, /* unimplemented sys_kexec_load */
- /* 284 */ NULL, /* unimplemented waitid */
+ /* 284 */ NULL, /* waitid */
/* 285 */ NULL, /* unimplemented / * unused * / */
/* 286 */ NULL, /* unimplemented add_key */
/* 287 */ NULL, /* unimplemented request_key */
Index: src/sys/compat/linux/arch/i386/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/i386/linux_systrace_args.c:1.19 src/sys/compat/linux/arch/i386/linux_systrace_args.c:1.20
--- src/sys/compat/linux/arch/i386/linux_systrace_args.c:1.19 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/i386/linux_systrace_args.c Fri Aug 18 15:42:06 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_systrace_args.c,v 1.19 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.20 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument to DTrace register array conversion.
@@ -1816,6 +1816,17 @@ systrace_args(register_t sysnum, const v
*n_args = 4;
break;
}
+ /* linux_sys_waitid */
+ case 284: {
+ const struct linux_sys_waitid_args *p = params;
+ iarg[0] = SCARG(p, idtype); /* int */
+ iarg[1] = SCARG(p, id); /* id_t */
+ uarg[2] = (intptr_t) SCARG(p, infop); /* linux_siginfo_t * */
+ iarg[3] = SCARG(p, options); /* int */
+ uarg[4] = (intptr_t) SCARG(p, rusage); /* struct rusage50 * */
+ *n_args = 5;
+ break;
+ }
/* linux_sys_openat */
case 295: {
const struct linux_sys_openat_args *p = params;
@@ -5066,6 +5077,28 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux_sys_waitid */
+ case 284:
+ switch(ndx) {
+ case 0:
+ p = "int";
+ break;
+ case 1:
+ p = "id_t";
+ break;
+ case 2:
+ p = "linux_siginfo_t *";
+ break;
+ case 3:
+ p = "int";
+ break;
+ case 4:
+ p = "struct rusage50 *";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux_sys_openat */
case 295:
switch(ndx) {
@@ -6754,6 +6787,11 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux_sys_waitid */
+ case 284:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux_sys_openat */
case 295:
if (ndx == 0 || ndx == 1)
Index: src/sys/compat/linux/arch/mips/linux_syscall.h
diff -u src/sys/compat/linux/arch/mips/linux_syscall.h:1.88 src/sys/compat/linux/arch/mips/linux_syscall.h:1.89
--- src/sys/compat/linux/arch/mips/linux_syscall.h:1.88 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/mips/linux_syscall.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.88 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.89 2023/08/18 19:42:06 christos Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:05:31 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -655,6 +655,9 @@
/* syscall: "utimes" ret: "int" args: "const char *" "const struct timeval50 *" */
#define LINUX_SYS_utimes 267
+/* syscall: "waitid" ret: "int" args: "int" "id_t" "linux_siginfo_t *" "int" "struct rusage50 *" */
+#define LINUX_SYS_waitid 278
+
/* syscall: "set_thread_area" ret: "int" args: "void *" */
#define LINUX_SYS_set_thread_area 283
Index: src/sys/compat/linux/arch/mips/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.87 src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.88
--- src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.87 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/mips/linux_syscallargs.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.87 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.88 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:05:31 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -1065,6 +1065,15 @@ check_syscall_args(linux_sys_tgkill)
struct compat_50_sys_utimes_args;
+struct linux_sys_waitid_args {
+ syscallarg(int) idtype;
+ syscallarg(id_t) id;
+ syscallarg(linux_siginfo_t *) infop;
+ syscallarg(int) options;
+ syscallarg(struct rusage50 *) rusage;
+};
+check_syscall_args(linux_sys_waitid)
+
struct linux_sys_set_thread_area_args {
syscallarg(void *) tls;
};
@@ -1751,6 +1760,8 @@ int linux_sys_tgkill(struct lwp *, const
int compat_50_sys_utimes(struct lwp *, const struct compat_50_sys_utimes_args *, register_t *);
+int linux_sys_waitid(struct lwp *, const struct linux_sys_waitid_args *, register_t *);
+
int linux_sys_set_thread_area(struct lwp *, const struct linux_sys_set_thread_area_args *, register_t *);
int linux_sys_openat(struct lwp *, const struct linux_sys_openat_args *, register_t *);
Index: src/sys/compat/linux/arch/mips/linux_syscalls.c
diff -u src/sys/compat/linux/arch/mips/linux_syscalls.c:1.87 src/sys/compat/linux/arch/mips/linux_syscalls.c:1.88
--- src/sys/compat/linux/arch/mips/linux_syscalls.c:1.87 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/mips/linux_syscalls.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.87 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.88 2023/08/18 19:42:06 christos Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:05:31 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.87 2023/07/29 15:05:46 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.88 2023/08/18 19:42:06 christos Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -308,7 +308,7 @@ const char *const linux_syscallnames[] =
/* 275 */ "#275 (unimplemented mq_notify)",
/* 276 */ "#276 (unimplemented mq_getsetattr)",
/* 277 */ "#277 (unimplemented vserve)",
- /* 278 */ "#278 (unimplemented waitid)",
+ /* 278 */ "waitid",
/* 279 */ "#279 (unimplemented setaltroot)",
/* 280 */ "#280 (unimplemented add_key)",
/* 281 */ "#281 (unimplemented request_key)",
@@ -825,7 +825,7 @@ const char *const altlinux_syscallnames[
/* 275 */ NULL, /* unimplemented mq_notify */
/* 276 */ NULL, /* unimplemented mq_getsetattr */
/* 277 */ NULL, /* unimplemented vserve */
- /* 278 */ NULL, /* unimplemented waitid */
+ /* 278 */ NULL, /* waitid */
/* 279 */ NULL, /* unimplemented setaltroot */
/* 280 */ NULL, /* unimplemented add_key */
/* 281 */ NULL, /* unimplemented request_key */
Index: src/sys/compat/linux/arch/mips/linux_sysent.c
diff -u src/sys/compat/linux/arch/mips/linux_sysent.c:1.87 src/sys/compat/linux/arch/mips/linux_sysent.c:1.88
--- src/sys/compat/linux/arch/mips/linux_sysent.c:1.87 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/mips/linux_sysent.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.87 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.88 2023/08/18 19:42:06 christos Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.77 2023/07/29 15:05:31 christos Exp
+ * created from NetBSD: syscalls.master,v 1.78 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.87 2023/07/29 15:05:46 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.88 2023/08/18 19:42:06 christos Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1210,8 +1210,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 277 = filler */
{
- .sy_call = linux_sys_nosys,
- }, /* 278 = filler */
+ ns(struct linux_sys_waitid_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_waitid
+ }, /* 278 = waitid */
{
.sy_call = linux_sys_nosys,
}, /* 279 = filler */
Index: src/sys/compat/linux/arch/powerpc/linux_syscall.h
diff -u src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.94 src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.95
--- src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.94 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/powerpc/linux_syscall.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.94 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.95 2023/08/18 19:42:06 christos Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.82 2023/07/29 15:04:29 christos Exp
+ * created from NetBSD: syscalls.master,v 1.83 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -627,6 +627,9 @@
/* syscall: "fadvise64_64" ret: "int" args: "int" "off_t" "off_t" "int" */
#define LINUX_SYS_fadvise64_64 254
+/* syscall: "waitid" ret: "int" args: "int" "id_t" "linux_siginfo_t *" "int" "struct rusage50 *" */
+#define LINUX_SYS_waitid 272
+
/* syscall: "pselect6" ret: "int" args: "int" "fd_set *" "fd_set *" "fd_set *" "struct linux_timespec *" "linux_sized_sigset_t *" */
#define LINUX_SYS_pselect6 280
Index: src/sys/compat/linux/arch/powerpc/linux_sysent.c
diff -u src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.94 src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.95
--- src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.94 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/powerpc/linux_sysent.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.94 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.95 2023/08/18 19:42:06 christos Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.82 2023/07/29 15:04:29 christos Exp
+ * created from NetBSD: syscalls.master,v 1.83 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.94 2023/07/29 15:05:46 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.95 2023/08/18 19:42:06 christos Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1173,8 +1173,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 271 = filler */
{
- .sy_call = linux_sys_nosys,
- }, /* 272 = filler */
+ ns(struct linux_sys_waitid_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_waitid
+ }, /* 272 = waitid */
{
.sy_call = linux_sys_nosys,
}, /* 273 = filler */
Index: src/sys/compat/linux/arch/powerpc/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.93 src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.94
--- src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.93 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/powerpc/linux_syscallargs.h Fri Aug 18 15:42:06 2023
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.93 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.94 2023/08/18 19:42:06 christos Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.82 2023/07/29 15:04:29 christos Exp
+ * created from NetBSD: syscalls.master,v 1.83 2023/08/18 19:41:19 christos Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -957,6 +957,15 @@ struct linux_sys_fadvise64_64_args {
};
check_syscall_args(linux_sys_fadvise64_64)
+struct linux_sys_waitid_args {
+ syscallarg(int) idtype;
+ syscallarg(id_t) id;
+ syscallarg(linux_siginfo_t *) infop;
+ syscallarg(int) options;
+ syscallarg(struct rusage50 *) rusage;
+};
+check_syscall_args(linux_sys_waitid)
+
struct linux_sys_pselect6_args {
syscallarg(int) nfds;
syscallarg(fd_set *) readfds;
@@ -1610,6 +1619,8 @@ int linux_sys_fstatfs64(struct lwp *, co
int linux_sys_fadvise64_64(struct lwp *, const struct linux_sys_fadvise64_64_args *, register_t *);
+int linux_sys_waitid(struct lwp *, const struct linux_sys_waitid_args *, register_t *);
+
int linux_sys_pselect6(struct lwp *, const struct linux_sys_pselect6_args *, register_t *);
int linux_sys_ppoll(struct lwp *, const struct linux_sys_ppoll_args *, register_t *);
Index: src/sys/compat/linux/arch/powerpc/linux_syscalls.c
diff -u src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.93 src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.94
--- src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.93 Sat Jul 29 11:05:46 2023
+++ src/sys/compat/linux/arch/powerpc/linux_syscalls.c Fri Aug 18 15:42:06 2023
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.93 2023/07/29 15:05:46 christos Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.94 2023/08/18 19:42:06 christos Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.82 2023/07/29 15:04:29 christos Exp
+ * created from NetBSD: syscalls.master,v 1.83 2023/08/18 19:41:19 christos Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.93 2023/07/29 15:05:46 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.94 2023/08/18 19:42:06 christos Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -305,7 +305,7 @@ const char *const linux_syscallnames[] =
/* 269 */ "#269 (unimplemented add_key)",
/* 270 */ "#270 (unimplemented request_key)",
/* 271 */ "#271 (unimplemented keyctl)",
- /* 272 */ "#272 (unimplemented waitid)",
+ /* 272 */ "waitid",
/* 273 */ "#273 (unimplemented ioprio_set)",
/* 274 */ "#274 (unimplemented ioprio_get)",
/* 275 */ "#275 (unimplemented inotify_init)",
@@ -827,7 +827,7 @@ const char *const altlinux_syscallnames[
/* 269 */ NULL, /* unimplemented add_key */
/* 270 */ NULL, /* unimplemented request_key */
/* 271 */ NULL, /* unimplemented keyctl */
- /* 272 */ NULL, /* unimplemented waitid */
+ /* 272 */ NULL, /* waitid */
/* 273 */ NULL, /* unimplemented ioprio_set */
/* 274 */ NULL, /* unimplemented ioprio_get */
/* 275 */ NULL, /* unimplemented inotify_init */