Module Name:    src
Committed By:   ryo
Date:           Wed Nov 24 18:57:25 UTC 2021

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/arm: linux_syscall.h linux_syscallargs.h
            linux_syscalls.c linux_sysent.c linux_systrace_args.c
        src/sys/compat/linux/arch/m68k: linux_syscall.h linux_syscallargs.h
            linux_syscalls.c linux_sysent.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.1 -r1.2 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.86 -r1.87 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.19 -r1.20 \
    src/sys/compat/linux/arch/arm/linux_systrace_args.c
cvs rdiff -u -r1.112 -r1.113 src/sys/compat/linux/arch/m68k/linux_syscall.h \
    src/sys/compat/linux/arch/m68k/linux_syscalls.c \
    src/sys/compat/linux/arch/m68k/linux_sysent.c
cvs rdiff -u -r1.111 -r1.112 \
    src/sys/compat/linux/arch/m68k/linux_syscallargs.h
cvs rdiff -u -r1.84 -r1.85 src/sys/compat/linux/arch/mips/linux_syscall.h
cvs rdiff -u -r1.83 -r1.84 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.90 -r1.91 src/sys/compat/linux/arch/powerpc/linux_syscall.h \
    src/sys/compat/linux/arch/powerpc/linux_sysent.c
cvs rdiff -u -r1.89 -r1.90 \
    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.1 src/sys/compat/linux/arch/aarch64/linux_syscall.h:1.2
--- src/sys/compat/linux/arch/aarch64/linux_syscall.h:1.1	Thu Sep 23 06:56:27 2021
+++ src/sys/compat/linux/arch/aarch64/linux_syscall.h	Wed Nov 24 18:57:24 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.1 2021/09/23 06:56:27 ryo Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.2 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * created from	NetBSD
+ * created from	NetBSD: syscalls.master,v 1.1 2021/09/23 06:56:27 ryo Exp
  */
 
 #ifndef _LINUX_SYS_SYSCALL_H_
@@ -582,6 +582,9 @@
 /* syscall: "sendmmsg" ret: "int" args: "int" "struct linux_mmsghdr *" "unsigned int" "unsigned int" */
 #define	LINUX_SYS_sendmmsg	269
 
+/* syscall: "getrandom" ret: "ssize_t" args: "void *" "size_t" "unsigned int" */
+#define	LINUX_SYS_getrandom	278
+
 /* syscall: "nosys" ret: "int" args: */
 #define	LINUX_SYS_nosys	440
 
Index: src/sys/compat/linux/arch/aarch64/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/aarch64/linux_syscallargs.h:1.1 src/sys/compat/linux/arch/aarch64/linux_syscallargs.h:1.2
--- src/sys/compat/linux/arch/aarch64/linux_syscallargs.h:1.1	Thu Sep 23 06:56:27 2021
+++ src/sys/compat/linux/arch/aarch64/linux_syscallargs.h	Wed Nov 24 18:57:24 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.1 2021/09/23 06:56:27 ryo Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.2 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call argument lists.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * created from	NetBSD
+ * created from	NetBSD: syscalls.master,v 1.1 2021/09/23 06:56:27 ryo Exp
  */
 
 #ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -965,6 +965,8 @@ struct linux_sys_sendmmsg_args {
 };
 check_syscall_args(linux_sys_sendmmsg)
 
+struct sys_getrandom_args;
+
 /*
  * System call prototypes.
  */
@@ -1352,6 +1354,8 @@ int	linux_sys_wait4(struct lwp *, const 
 
 int	linux_sys_sendmmsg(struct lwp *, const struct linux_sys_sendmmsg_args *, register_t *);
 
+int	sys_getrandom(struct lwp *, const struct sys_getrandom_args *, register_t *);
+
 int	linux_sys_nosys(struct lwp *, const void *, register_t *);
 
 #endif /* _LINUX_SYS_SYSCALLARGS_H_ */
Index: src/sys/compat/linux/arch/aarch64/linux_syscalls.c
diff -u src/sys/compat/linux/arch/aarch64/linux_syscalls.c:1.1 src/sys/compat/linux/arch/aarch64/linux_syscalls.c:1.2
--- src/sys/compat/linux/arch/aarch64/linux_syscalls.c:1.1	Thu Sep 23 06:56:27 2021
+++ src/sys/compat/linux/arch/aarch64/linux_syscalls.c	Wed Nov 24 18:57:24 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.1 2021/09/23 06:56:27 ryo Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.2 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call names.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * created from	NetBSD
+ * created from	NetBSD: syscalls.master,v 1.1 2021/09/23 06:56:27 ryo Exp
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.1 2021/09/23 06:56:27 ryo Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.2 2021/11/24 18:57:24 ryo Exp $");
 
 #if defined(_KERNEL_OPT)
 #if defined(_KERNEL_OPT)
@@ -339,7 +339,7 @@ const char *const linux_syscallnames[] =
 	/* 275 */	"#275 (unimplemented sched_getattr)",
 	/* 276 */	"#276 (unimplemented renameat2)",
 	/* 277 */	"#277 (unimplemented seccomp)",
-	/* 278 */	"#278 (unimplemented getrandom)",
+	/* 278 */	"getrandom",
 	/* 279 */	"#279 (unimplemented memfd_create)",
 	/* 280 */	"#280 (unimplemented bpf)",
 	/* 281 */	"#281 (unimplemented execveat)",
@@ -877,7 +877,7 @@ const char *const altlinux_syscallnames[
 	/* 275 */	NULL, /* unimplemented sched_getattr */
 	/* 276 */	NULL, /* unimplemented renameat2 */
 	/* 277 */	NULL, /* unimplemented seccomp */
-	/* 278 */	NULL, /* unimplemented getrandom */
+	/* 278 */	NULL, /* getrandom */
 	/* 279 */	NULL, /* unimplemented memfd_create */
 	/* 280 */	NULL, /* unimplemented bpf */
 	/* 281 */	NULL, /* unimplemented execveat */
Index: src/sys/compat/linux/arch/aarch64/linux_sysent.c
diff -u src/sys/compat/linux/arch/aarch64/linux_sysent.c:1.1 src/sys/compat/linux/arch/aarch64/linux_sysent.c:1.2
--- src/sys/compat/linux/arch/aarch64/linux_sysent.c:1.1	Thu Sep 23 06:56:27 2021
+++ src/sys/compat/linux/arch/aarch64/linux_sysent.c	Wed Nov 24 18:57:24 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.1 2021/09/23 06:56:27 ryo Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.2 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * created from	NetBSD
+ * created from	NetBSD: syscalls.master,v 1.1 2021/09/23 06:56:27 ryo Exp
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.1 2021/09/23 06:56:27 ryo Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.2 2021/11/24 18:57:24 ryo Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_sysv.h"
@@ -1223,8 +1223,10 @@ struct sysent linux_sysent[] = {
 		.sy_call = linux_sys_nosys,
 	},		/* 277 = filler */
 	{
-		.sy_call = linux_sys_nosys,
-	},		/* 278 = filler */
+		ns(struct sys_getrandom_args),
+		.sy_flags = SYCALL_ARG_PTR,
+		.sy_call = (sy_call_t *)sys_getrandom
+	},		/* 278 = getrandom */
 	{
 		.sy_call = linux_sys_nosys,
 	},		/* 279 = filler */
Index: src/sys/compat/linux/arch/aarch64/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/aarch64/linux_systrace_args.c:1.1 src/sys/compat/linux/arch/aarch64/linux_systrace_args.c:1.2
--- src/sys/compat/linux/arch/aarch64/linux_systrace_args.c:1.1	Thu Sep 23 06:56:27 2021
+++ src/sys/compat/linux/arch/aarch64/linux_systrace_args.c	Wed Nov 24 18:57:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_systrace_args.c,v 1.1 2021/09/23 06:56:27 ryo Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.2 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call argument to DTrace register array conversion.
@@ -1611,6 +1611,15 @@ systrace_args(register_t sysnum, const v
 		*n_args = 4;
 		break;
 	}
+	/* sys_getrandom */
+	case 278: {
+		const struct sys_getrandom_args *p = params;
+		uarg[0] = (intptr_t) SCARG(p, buf); /* void * */
+		uarg[1] = SCARG(p, buflen); /* size_t */
+		uarg[2] = SCARG(p, flags); /* unsigned int */
+		*n_args = 3;
+		break;
+	}
 	/* linux_sys_nosys */
 	case 440: {
 		*n_args = 0;
@@ -4336,6 +4345,22 @@ systrace_entry_setargdesc(int sysnum, in
 			break;
 		};
 		break;
+	/* sys_getrandom */
+	case 278:
+		switch(ndx) {
+		case 0:
+			p = "void *";
+			break;
+		case 1:
+			p = "size_t";
+			break;
+		case 2:
+			p = "unsigned int";
+			break;
+		default:
+			break;
+		};
+		break;
 	/* linux_sys_nosys */
 	case 440:
 		break;
@@ -5258,6 +5283,11 @@ systrace_return_setargdesc(int sysnum, i
 		if (ndx == 0 || ndx == 1)
 			p = "int";
 		break;
+	/* sys_getrandom */
+	case 278:
+		if (ndx == 0 || ndx == 1)
+			p = "ssize_t";
+		break;
 	/* linux_sys_nosys */
 	case 440:
 	default:

Index: src/sys/compat/linux/arch/arm/linux_syscall.h
diff -u src/sys/compat/linux/arch/arm/linux_syscall.h:1.86 src/sys/compat/linux/arch/arm/linux_syscall.h:1.87
--- src/sys/compat/linux/arch/arm/linux_syscall.h:1.86	Mon Sep 20 02:20:30 2021
+++ src/sys/compat/linux/arch/arm/linux_syscall.h	Wed Nov 24 18:57:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscall.h,v 1.86 2021/09/20 02:20:30 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.87 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call numbers.
Index: src/sys/compat/linux/arch/arm/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.86 src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.87
--- src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.86	Mon Sep 20 02:20:30 2021
+++ src/sys/compat/linux/arch/arm/linux_syscallargs.h	Wed Nov 24 18:57:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscallargs.h,v 1.86 2021/09/20 02:20:30 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.87 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call argument lists.
Index: src/sys/compat/linux/arch/arm/linux_syscalls.c
diff -u src/sys/compat/linux/arch/arm/linux_syscalls.c:1.86 src/sys/compat/linux/arch/arm/linux_syscalls.c:1.87
--- src/sys/compat/linux/arch/arm/linux_syscalls.c:1.86	Mon Sep 20 02:20:30 2021
+++ src/sys/compat/linux/arch/arm/linux_syscalls.c	Wed Nov 24 18:57:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscalls.c,v 1.86 2021/09/20 02:20:30 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.87 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call names.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.86 2021/09/20 02:20:30 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.87 2021/11/24 18:57:24 ryo Exp $");
 
 #if defined(_KERNEL_OPT)
 #include <sys/param.h>
Index: src/sys/compat/linux/arch/arm/linux_sysent.c
diff -u src/sys/compat/linux/arch/arm/linux_sysent.c:1.86 src/sys/compat/linux/arch/arm/linux_sysent.c:1.87
--- src/sys/compat/linux/arch/arm/linux_sysent.c:1.86	Mon Sep 20 02:20:30 2021
+++ src/sys/compat/linux/arch/arm/linux_sysent.c	Wed Nov 24 18:57:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_sysent.c,v 1.86 2021/09/20 02:20:30 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.87 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call switch table.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.86 2021/09/20 02:20:30 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.87 2021/11/24 18:57:24 ryo Exp $");
 
 #include <sys/param.h>
 #include <sys/poll.h>

Index: src/sys/compat/linux/arch/arm/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.19 src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.20
--- src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.19	Mon Sep 20 02:20:30 2021
+++ src/sys/compat/linux/arch/arm/linux_systrace_args.c	Wed Nov 24 18:57:24 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_systrace_args.c,v 1.19 2021/09/20 02:20:30 thorpej Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.20 2021/11/24 18:57:24 ryo Exp $ */
 
 /*
  * System call argument to DTrace register array conversion.

Index: src/sys/compat/linux/arch/m68k/linux_syscall.h
diff -u src/sys/compat/linux/arch/m68k/linux_syscall.h:1.112 src/sys/compat/linux/arch/m68k/linux_syscall.h:1.113
--- src/sys/compat/linux/arch/m68k/linux_syscall.h:1.112	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/m68k/linux_syscall.h	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscall.h,v 1.112 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.113 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call numbers.
@@ -759,6 +759,9 @@
 /* syscall: "pwritev" ret: "int" args: "int" "const struct iovcnt *" "int" "unsigned long" "unsigned long" */
 #define	LINUX_SYS_pwritev	330
 
+/* syscall: "getrandom" ret: "ssize_t" args: "void *" "size_t" "unsigned int" */
+#define	LINUX_SYS_getrandom	352
+
 /* syscall: "accept4" ret: "int" args: "int" "struct osockaddr *" "int *" "int" */
 #define	LINUX_SYS_accept4	361
 
Index: src/sys/compat/linux/arch/m68k/linux_syscalls.c
diff -u src/sys/compat/linux/arch/m68k/linux_syscalls.c:1.112 src/sys/compat/linux/arch/m68k/linux_syscalls.c:1.113
--- src/sys/compat/linux/arch/m68k/linux_syscalls.c:1.112	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/m68k/linux_syscalls.c	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscalls.c,v 1.112 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.113 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call names.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.112 2021/09/20 02:20:31 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.113 2021/11/24 18:57:25 ryo Exp $");
 
 #if defined(_KERNEL_OPT)
 #if defined(_KERNEL_OPT)
@@ -406,7 +406,7 @@ const char *const linux_syscallnames[] =
 	/* 349 */	"#349 (unimplemented sched_setattr)",
 	/* 350 */	"#350 (unimplemented sched_getattr)",
 	/* 351 */	"#351 (unimplemented renameat2)",
-	/* 352 */	"#352 (unimplemented getrandom)",
+	/* 352 */	"getrandom",
 	/* 353 */	"#353 (unimplemented memfd_create)",
 	/* 354 */	"#354 (unimplemented bpf)",
 	/* 355 */	"#355 (unimplemented execveat)",
@@ -944,7 +944,7 @@ const char *const altlinux_syscallnames[
 	/* 349 */	NULL, /* unimplemented sched_setattr */
 	/* 350 */	NULL, /* unimplemented sched_getattr */
 	/* 351 */	NULL, /* unimplemented renameat2 */
-	/* 352 */	NULL, /* unimplemented getrandom */
+	/* 352 */	NULL, /* getrandom */
 	/* 353 */	NULL, /* unimplemented memfd_create */
 	/* 354 */	NULL, /* unimplemented bpf */
 	/* 355 */	NULL, /* unimplemented execveat */
Index: src/sys/compat/linux/arch/m68k/linux_sysent.c
diff -u src/sys/compat/linux/arch/m68k/linux_sysent.c:1.112 src/sys/compat/linux/arch/m68k/linux_sysent.c:1.113
--- src/sys/compat/linux/arch/m68k/linux_sysent.c:1.112	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/m68k/linux_sysent.c	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_sysent.c,v 1.112 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.113 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call switch table.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.112 2021/09/20 02:20:31 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.113 2021/11/24 18:57:25 ryo Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_compat_netbsd.h"
@@ -1499,8 +1499,10 @@ struct sysent linux_sysent[] = {
 		.sy_call = linux_sys_nosys,
 	},		/* 351 = filler */
 	{
-		.sy_call = linux_sys_nosys,
-	},		/* 352 = filler */
+		ns(struct sys_getrandom_args),
+		.sy_flags = SYCALL_ARG_PTR,
+		.sy_call = (sy_call_t *)sys_getrandom
+	},		/* 352 = getrandom */
 	{
 		.sy_call = linux_sys_nosys,
 	},		/* 353 = filler */

Index: src/sys/compat/linux/arch/m68k/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/m68k/linux_syscallargs.h:1.111 src/sys/compat/linux/arch/m68k/linux_syscallargs.h:1.112
--- src/sys/compat/linux/arch/m68k/linux_syscallargs.h:1.111	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/m68k/linux_syscallargs.h	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscallargs.h,v 1.111 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.112 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call argument lists.
@@ -1175,6 +1175,8 @@ struct linux_sys_pwritev_args {
 };
 check_syscall_args(linux_sys_pwritev)
 
+struct sys_getrandom_args;
+
 struct linux_sys_accept4_args {
 	syscallarg(int) s;
 	syscallarg(struct osockaddr *) name;
@@ -1684,6 +1686,8 @@ int	linux_sys_preadv(struct lwp *, const
 
 int	linux_sys_pwritev(struct lwp *, const struct linux_sys_pwritev_args *, register_t *);
 
+int	sys_getrandom(struct lwp *, const struct sys_getrandom_args *, register_t *);
+
 int	linux_sys_accept4(struct lwp *, const struct linux_sys_accept4_args *, register_t *);
 
 int	linux_sys_recvmmsg(struct lwp *, const struct linux_sys_recvmmsg_args *, register_t *);

Index: src/sys/compat/linux/arch/mips/linux_syscall.h
diff -u src/sys/compat/linux/arch/mips/linux_syscall.h:1.84 src/sys/compat/linux/arch/mips/linux_syscall.h:1.85
--- src/sys/compat/linux/arch/mips/linux_syscall.h:1.84	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/mips/linux_syscall.h	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscall.h,v 1.84 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.85 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call numbers.
@@ -736,6 +736,9 @@
 /* syscall: "sendmmsg" ret: "int" args: "int" "struct linux_mmsghdr *" "unsigned int" "unsigned int" */
 #define	LINUX_SYS_sendmmsg	344
 
+/* syscall: "getrandom" ret: "ssize_t" args: "void *" "size_t" "unsigned int" */
+#define	LINUX_SYS_getrandom	354
+
 #define	LINUX_SYS_MAXSYSCALL	367
 #define	LINUX_SYS_NSYSENT	512
 #endif /* _LINUX_SYS_SYSCALL_H_ */

Index: src/sys/compat/linux/arch/mips/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.83 src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.84
--- src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.83	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/mips/linux_syscallargs.h	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscallargs.h,v 1.83 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.84 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call argument lists.
@@ -1238,6 +1238,8 @@ struct linux_sys_sendmmsg_args {
 };
 check_syscall_args(linux_sys_sendmmsg)
 
+struct sys_getrandom_args;
+
 /*
  * System call prototypes.
  */
@@ -1722,4 +1724,6 @@ int	linux_sys_recvmmsg(struct lwp *, con
 
 int	linux_sys_sendmmsg(struct lwp *, const struct linux_sys_sendmmsg_args *, register_t *);
 
+int	sys_getrandom(struct lwp *, const struct sys_getrandom_args *, register_t *);
+
 #endif /* _LINUX_SYS_SYSCALLARGS_H_ */
Index: src/sys/compat/linux/arch/mips/linux_syscalls.c
diff -u src/sys/compat/linux/arch/mips/linux_syscalls.c:1.83 src/sys/compat/linux/arch/mips/linux_syscalls.c:1.84
--- src/sys/compat/linux/arch/mips/linux_syscalls.c:1.83	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/mips/linux_syscalls.c	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscalls.c,v 1.83 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.84 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call names.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.83 2021/09/20 02:20:31 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.84 2021/11/24 18:57:25 ryo Exp $");
 
 #if defined(_KERNEL_OPT)
 #include <sys/param.h>
@@ -384,7 +384,7 @@ const char *const linux_syscallnames[] =
 	/* 351 */	"#351 (unimplemented sched_getattr)",
 	/* 352 */	"#352 (unimplemented renameat2)",
 	/* 353 */	"#353 (unimplemented seccomp)",
-	/* 354 */	"#354 (unimplemented getrandom)",
+	/* 354 */	"getrandom",
 	/* 355 */	"#355 (unimplemented memfd_create)",
 	/* 356 */	"#356 (unimplemented bpf)",
 	/* 357 */	"#357 (unimplemented execveat)",
@@ -901,7 +901,7 @@ const char *const altlinux_syscallnames[
 	/* 351 */	NULL, /* unimplemented sched_getattr */
 	/* 352 */	NULL, /* unimplemented renameat2 */
 	/* 353 */	NULL, /* unimplemented seccomp */
-	/* 354 */	NULL, /* unimplemented getrandom */
+	/* 354 */	NULL, /* getrandom */
 	/* 355 */	NULL, /* unimplemented memfd_create */
 	/* 356 */	NULL, /* unimplemented bpf */
 	/* 357 */	NULL, /* unimplemented execveat */
Index: src/sys/compat/linux/arch/mips/linux_sysent.c
diff -u src/sys/compat/linux/arch/mips/linux_sysent.c:1.83 src/sys/compat/linux/arch/mips/linux_sysent.c:1.84
--- src/sys/compat/linux/arch/mips/linux_sysent.c:1.83	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/mips/linux_sysent.c	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_sysent.c,v 1.83 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.84 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call switch table.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.83 2021/09/20 02:20:31 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.84 2021/11/24 18:57:25 ryo Exp $");
 
 #include <sys/param.h>
 #include <sys/poll.h>
@@ -1489,8 +1489,10 @@ struct sysent linux_sysent[] = {
 		.sy_call = linux_sys_nosys,
 	},		/* 353 = filler */
 	{
-		.sy_call = linux_sys_nosys,
-	},		/* 354 = filler */
+		ns(struct sys_getrandom_args),
+		.sy_flags = SYCALL_ARG_PTR,
+		.sy_call = (sy_call_t *)sys_getrandom
+	},		/* 354 = getrandom */
 	{
 		.sy_call = linux_sys_nosys,
 	},		/* 355 = filler */

Index: src/sys/compat/linux/arch/powerpc/linux_syscall.h
diff -u src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.90 src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.91
--- src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.90	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/powerpc/linux_syscall.h	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscall.h,v 1.90 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.91 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call numbers.
@@ -705,6 +705,9 @@
 /* syscall: "sendmmsg" ret: "int" args: "int" "struct linux_mmsghdr *" "unsigned int" "unsigned int" */
 #define	LINUX_SYS_sendmmsg	349
 
+/* syscall: "getrandom" ret: "ssize_t" args: "void *" "size_t" "unsigned int" */
+#define	LINUX_SYS_getrandom	359
+
 #define	LINUX_SYS_MAXSYSCALL	383
 #define	LINUX_SYS_NSYSENT	512
 #endif /* _LINUX_SYS_SYSCALL_H_ */
Index: src/sys/compat/linux/arch/powerpc/linux_sysent.c
diff -u src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.90 src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.91
--- src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.90	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/powerpc/linux_sysent.c	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_sysent.c,v 1.90 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.91 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call switch table.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.90 2021/09/20 02:20:31 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.91 2021/11/24 18:57:25 ryo Exp $");
 
 #include <sys/param.h>
 #include <sys/poll.h>
@@ -1483,8 +1483,10 @@ struct sysent linux_sysent[] = {
 		.sy_call = linux_sys_nosys,
 	},		/* 358 = filler */
 	{
-		.sy_call = linux_sys_nosys,
-	},		/* 359 = filler */
+		ns(struct sys_getrandom_args),
+		.sy_flags = SYCALL_ARG_PTR,
+		.sy_call = (sy_call_t *)sys_getrandom
+	},		/* 359 = getrandom */
 	{
 		.sy_call = linux_sys_nosys,
 	},		/* 360 = filler */

Index: src/sys/compat/linux/arch/powerpc/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.89 src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.90
--- src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.89	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/powerpc/linux_syscallargs.h	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscallargs.h,v 1.89 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.90 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call argument lists.
@@ -1125,6 +1125,8 @@ struct linux_sys_sendmmsg_args {
 };
 check_syscall_args(linux_sys_sendmmsg)
 
+struct sys_getrandom_args;
+
 /*
  * System call prototypes.
  */
@@ -1585,4 +1587,6 @@ int	linux_sys_accept4(struct lwp *, cons
 
 int	linux_sys_sendmmsg(struct lwp *, const struct linux_sys_sendmmsg_args *, register_t *);
 
+int	sys_getrandom(struct lwp *, const struct sys_getrandom_args *, register_t *);
+
 #endif /* _LINUX_SYS_SYSCALLARGS_H_ */
Index: src/sys/compat/linux/arch/powerpc/linux_syscalls.c
diff -u src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.89 src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.90
--- src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.89	Mon Sep 20 02:20:31 2021
+++ src/sys/compat/linux/arch/powerpc/linux_syscalls.c	Wed Nov 24 18:57:25 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: linux_syscalls.c,v 1.89 2021/09/20 02:20:31 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.90 2021/11/24 18:57:25 ryo Exp $ */
 
 /*
  * System call names.
@@ -8,7 +8,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.89 2021/09/20 02:20:31 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.90 2021/11/24 18:57:25 ryo Exp $");
 
 #if defined(_KERNEL_OPT)
 #include <sys/param.h>
@@ -392,7 +392,7 @@ const char *const linux_syscallnames[] =
 	/* 356 */	"#356 (unimplemented sched_getattr)",
 	/* 357 */	"#357 (unimplemented renameat2)",
 	/* 358 */	"#358 (unimplemented seccomp)",
-	/* 359 */	"#359 (unimplemented getrandom)",
+	/* 359 */	"getrandom",
 	/* 360 */	"#360 (unimplemented memfd_create)",
 	/* 361 */	"#361 (unimplemented bpf)",
 	/* 362 */	"#362 (unimplemented execveat)",
@@ -914,7 +914,7 @@ const char *const altlinux_syscallnames[
 	/* 356 */	NULL, /* unimplemented sched_getattr */
 	/* 357 */	NULL, /* unimplemented renameat2 */
 	/* 358 */	NULL, /* unimplemented seccomp */
-	/* 359 */	NULL, /* unimplemented getrandom */
+	/* 359 */	NULL, /* getrandom */
 	/* 360 */	NULL, /* unimplemented memfd_create */
 	/* 361 */	NULL, /* unimplemented bpf */
 	/* 362 */	NULL, /* unimplemented execveat */

Reply via email to