Module Name: src
Committed By: thorpej
Date: Sun Sep 19 23:02:23 UTC 2021
Modified Files:
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/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
src/sys/compat/linux32/arch/amd64: linux32_syscall.h
linux32_syscallargs.h linux32_syscalls.c linux32_sysent.c
linux32_systrace_args.c
Log Message:
Regen for POSIX timer syscalls.
To generate a diff of this commit:
cvs rdiff -u -r1.110 -r1.111 src/sys/compat/linux/arch/alpha/linux_syscall.h \
src/sys/compat/linux/arch/alpha/linux_sysent.c
cvs rdiff -u -r1.109 -r1.110 \
src/sys/compat/linux/arch/alpha/linux_syscallargs.h
cvs rdiff -u -r1.111 -r1.112 src/sys/compat/linux/arch/alpha/linux_syscalls.c
cvs rdiff -u -r1.71 -r1.72 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.15 -r1.16 \
src/sys/compat/linux/arch/amd64/linux_systrace_args.c
cvs rdiff -u -r1.82 -r1.83 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.15 -r1.16 \
src/sys/compat/linux/arch/arm/linux_systrace_args.c
cvs rdiff -u -r1.116 -r1.117 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.117 -r1.118 src/sys/compat/linux/arch/i386/linux_syscalls.c
cvs rdiff -u -r1.11 -r1.12 \
src/sys/compat/linux/arch/i386/linux_systrace_args.c
cvs rdiff -u -r1.108 -r1.109 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.107 -r1.108 \
src/sys/compat/linux/arch/m68k/linux_syscallargs.h
cvs rdiff -u -r1.80 -r1.81 src/sys/compat/linux/arch/mips/linux_syscall.h
cvs rdiff -u -r1.79 -r1.80 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.86 -r1.87 src/sys/compat/linux/arch/powerpc/linux_syscall.h \
src/sys/compat/linux/arch/powerpc/linux_sysent.c
cvs rdiff -u -r1.85 -r1.86 \
src/sys/compat/linux/arch/powerpc/linux_syscallargs.h \
src/sys/compat/linux/arch/powerpc/linux_syscalls.c
cvs rdiff -u -r1.81 -r1.82 \
src/sys/compat/linux32/arch/amd64/linux32_syscall.h \
src/sys/compat/linux32/arch/amd64/linux32_syscallargs.h \
src/sys/compat/linux32/arch/amd64/linux32_syscalls.c \
src/sys/compat/linux32/arch/amd64/linux32_sysent.c
cvs rdiff -u -r1.8 -r1.9 \
src/sys/compat/linux32/arch/amd64/linux32_systrace_args.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/alpha/linux_syscall.h
diff -u src/sys/compat/linux/arch/alpha/linux_syscall.h:1.110 src/sys/compat/linux/arch/alpha/linux_syscall.h:1.111
--- src/sys/compat/linux/arch/alpha/linux_syscall.h:1.110 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/alpha/linux_syscall.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.110 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.111 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.97 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -624,6 +624,21 @@
/* syscall: "fadvise64" ret: "int" args: "int" "off_t" "size_t" "int" */
#define LINUX_SYS_fadvise64 413
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux_sigevent *" "timer_t *" */
+#define LINUX_SYS_timer_create 414
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_settime 415
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_gettime 416
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_getoverrun 417
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_delete 418
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "struct linux_timespec *" */
#define LINUX_SYS_clock_settime 419
Index: src/sys/compat/linux/arch/alpha/linux_sysent.c
diff -u src/sys/compat/linux/arch/alpha/linux_sysent.c:1.110 src/sys/compat/linux/arch/alpha/linux_sysent.c:1.111
--- src/sys/compat/linux/arch/alpha/linux_sysent.c:1.110 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/alpha/linux_sysent.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.110 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.111 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.97 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.110 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.111 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
@@ -1655,20 +1655,28 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_fadvise64
}, /* 413 = fadvise64 */
{
- .sy_call = linux_sys_nosys,
- }, /* 414 = filler */
+ ns(struct linux_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_create
+ }, /* 414 = timer_create */
{
- .sy_call = linux_sys_nosys,
- }, /* 415 = filler */
+ ns(struct linux_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_settime
+ }, /* 415 = timer_settime */
{
- .sy_call = linux_sys_nosys,
- }, /* 416 = filler */
+ ns(struct linux_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_gettime
+ }, /* 416 = timer_gettime */
{
- .sy_call = linux_sys_nosys,
- }, /* 417 = filler */
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 417 = timer_getoverrun */
{
- .sy_call = linux_sys_nosys,
- }, /* 418 = filler */
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 418 = timer_delete */
{
ns(struct linux_sys_clock_settime_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/alpha/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/alpha/linux_syscallargs.h:1.109 src/sys/compat/linux/arch/alpha/linux_syscallargs.h:1.110
--- src/sys/compat/linux/arch/alpha/linux_syscallargs.h:1.109 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/alpha/linux_syscallargs.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.109 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.110 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.97 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -956,6 +956,31 @@ struct linux_sys_fadvise64_args {
};
check_syscall_args(linux_sys_fadvise64)
+struct linux_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux_sys_timer_create)
+
+struct linux_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux_itimerspec *) tim;
+ syscallarg(struct linux_itimerspec *) otim;
+};
+check_syscall_args(linux_sys_timer_settime)
+
+struct linux_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux_itimerspec *) tim;
+};
+check_syscall_args(linux_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(struct linux_timespec *) tp;
@@ -1570,6 +1595,16 @@ int linux_sys_set_tid_address(struct lwp
int linux_sys_fadvise64(struct lwp *, const struct linux_sys_fadvise64_args *, register_t *);
+int linux_sys_timer_create(struct lwp *, const struct linux_sys_timer_create_args *, register_t *);
+
+int linux_sys_timer_settime(struct lwp *, const struct linux_sys_timer_settime_args *, register_t *);
+
+int linux_sys_timer_gettime(struct lwp *, const struct linux_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux_sys_clock_settime(struct lwp *, const struct linux_sys_clock_settime_args *, register_t *);
int linux_sys_clock_gettime(struct lwp *, const struct linux_sys_clock_gettime_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.111 src/sys/compat/linux/arch/alpha/linux_syscalls.c:1.112
--- src/sys/compat/linux/arch/alpha/linux_syscalls.c:1.111 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/alpha/linux_syscalls.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.111 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.112 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.97 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.111 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.112 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@@ -473,11 +473,11 @@ const char *const linux_syscallnames[] =
/* 411 */ "set_tid_address",
/* 412 */ "#412 (unimplemented restart_syscall)",
/* 413 */ "fadvise64",
- /* 414 */ "#414 (unimplemented timer_create)",
- /* 415 */ "#415 (unimplemented timer_settime)",
- /* 416 */ "#416 (unimplemented timer_gettime)",
- /* 417 */ "#417 (unimplemented timer_getoverrun)",
- /* 418 */ "#418 (unimplemented timer_delete)",
+ /* 414 */ "timer_create",
+ /* 415 */ "timer_settime",
+ /* 416 */ "timer_gettime",
+ /* 417 */ "timer_getoverrun",
+ /* 418 */ "timer_delete",
/* 419 */ "clock_settime",
/* 420 */ "clock_gettime",
/* 421 */ "clock_getres",
@@ -1014,11 +1014,11 @@ const char *const altlinux_syscallnames[
/* 411 */ NULL, /* set_tid_address */
/* 412 */ NULL, /* unimplemented restart_syscall */
/* 413 */ NULL, /* fadvise64 */
- /* 414 */ NULL, /* unimplemented timer_create */
- /* 415 */ NULL, /* unimplemented timer_settime */
- /* 416 */ NULL, /* unimplemented timer_gettime */
- /* 417 */ NULL, /* unimplemented timer_getoverrun */
- /* 418 */ NULL, /* unimplemented timer_delete */
+ /* 414 */ NULL, /* timer_create */
+ /* 415 */ NULL, /* timer_settime */
+ /* 416 */ NULL, /* timer_gettime */
+ /* 417 */ NULL, /* timer_getoverrun */
+ /* 418 */ NULL, /* timer_delete */
/* 419 */ NULL, /* clock_settime */
/* 420 */ NULL, /* clock_gettime */
/* 421 */ NULL, /* clock_getres */
Index: src/sys/compat/linux/arch/amd64/linux_syscall.h
diff -u src/sys/compat/linux/arch/amd64/linux_syscall.h:1.71 src/sys/compat/linux/arch/amd64/linux_syscall.h:1.72
--- src/sys/compat/linux/arch/amd64/linux_syscall.h:1.71 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/amd64/linux_syscall.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.71 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.62 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -573,6 +573,21 @@
/* syscall: "fadvise64" ret: "int" args: "int" "off_t" "size_t" "int" */
#define LINUX_SYS_fadvise64 221
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux_sigevent *" "timer_t *" */
+#define LINUX_SYS_timer_create 222
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_settime 223
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_gettime 224
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_getoverrun 225
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_delete 226
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "struct linux_timespec *" */
#define LINUX_SYS_clock_settime 227
Index: src/sys/compat/linux/arch/amd64/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/amd64/linux_syscallargs.h:1.71 src/sys/compat/linux/arch/amd64/linux_syscallargs.h:1.72
--- src/sys/compat/linux/arch/amd64/linux_syscallargs.h:1.71 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/amd64/linux_syscallargs.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.71 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.62 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -857,6 +857,31 @@ struct linux_sys_fadvise64_args {
};
check_syscall_args(linux_sys_fadvise64)
+struct linux_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux_sys_timer_create)
+
+struct linux_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux_itimerspec *) tim;
+ syscallarg(struct linux_itimerspec *) otim;
+};
+check_syscall_args(linux_sys_timer_settime)
+
+struct linux_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux_itimerspec *) tim;
+};
+check_syscall_args(linux_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(struct linux_timespec *) tp;
@@ -1427,6 +1452,16 @@ int linux_sys_set_tid_address(struct lwp
int linux_sys_fadvise64(struct lwp *, const struct linux_sys_fadvise64_args *, register_t *);
+int linux_sys_timer_create(struct lwp *, const struct linux_sys_timer_create_args *, register_t *);
+
+int linux_sys_timer_settime(struct lwp *, const struct linux_sys_timer_settime_args *, register_t *);
+
+int linux_sys_timer_gettime(struct lwp *, const struct linux_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux_sys_clock_settime(struct lwp *, const struct linux_sys_clock_settime_args *, register_t *);
int linux_sys_clock_gettime(struct lwp *, const struct linux_sys_clock_gettime_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.71 src/sys/compat/linux/arch/amd64/linux_syscalls.c:1.72
--- src/sys/compat/linux/arch/amd64/linux_syscalls.c:1.71 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/amd64/linux_syscalls.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.71 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.62 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.71 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@@ -288,11 +288,11 @@ const char *const linux_syscallnames[] =
/* 219 */ "#219 (unimplemented restart_syscall)",
/* 220 */ "#220 (unimplemented semtimedop)",
/* 221 */ "fadvise64",
- /* 222 */ "#222 (unimplemented timer_create)",
- /* 223 */ "#223 (unimplemented timer_settime)",
- /* 224 */ "#224 (unimplemented timer_gettime)",
- /* 225 */ "#225 (unimplemented timer_getoverrun)",
- /* 226 */ "#226 (unimplemented timer_delete)",
+ /* 222 */ "timer_create",
+ /* 223 */ "timer_settime",
+ /* 224 */ "timer_gettime",
+ /* 225 */ "timer_getoverrun",
+ /* 226 */ "timer_delete",
/* 227 */ "clock_settime",
/* 228 */ "clock_gettime",
/* 229 */ "clock_getres",
@@ -832,11 +832,11 @@ const char *const altlinux_syscallnames[
/* 219 */ NULL, /* unimplemented restart_syscall */
/* 220 */ NULL, /* unimplemented semtimedop */
/* 221 */ NULL, /* fadvise64 */
- /* 222 */ NULL, /* unimplemented timer_create */
- /* 223 */ NULL, /* unimplemented timer_settime */
- /* 224 */ NULL, /* unimplemented timer_gettime */
- /* 225 */ NULL, /* unimplemented timer_getoverrun */
- /* 226 */ NULL, /* unimplemented timer_delete */
+ /* 222 */ NULL, /* timer_create */
+ /* 223 */ NULL, /* timer_settime */
+ /* 224 */ NULL, /* timer_gettime */
+ /* 225 */ NULL, /* timer_getoverrun */
+ /* 226 */ NULL, /* timer_delete */
/* 227 */ NULL, /* clock_settime */
/* 228 */ NULL, /* clock_gettime */
/* 229 */ NULL, /* clock_getres */
Index: src/sys/compat/linux/arch/amd64/linux_sysent.c
diff -u src/sys/compat/linux/arch/amd64/linux_sysent.c:1.71 src/sys/compat/linux/arch/amd64/linux_sysent.c:1.72
--- src/sys/compat/linux/arch/amd64/linux_sysent.c:1.71 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/amd64/linux_sysent.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.71 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.62 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.71 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
@@ -1044,20 +1044,28 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_fadvise64
}, /* 221 = fadvise64 */
{
- .sy_call = linux_sys_nosys,
- }, /* 222 = filler */
+ ns(struct linux_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_create
+ }, /* 222 = timer_create */
{
- .sy_call = linux_sys_nosys,
- }, /* 223 = filler */
+ ns(struct linux_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_settime
+ }, /* 223 = timer_settime */
{
- .sy_call = linux_sys_nosys,
- }, /* 224 = filler */
+ ns(struct linux_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_gettime
+ }, /* 224 = timer_gettime */
{
- .sy_call = linux_sys_nosys,
- }, /* 225 = filler */
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 225 = timer_getoverrun */
{
- .sy_call = linux_sys_nosys,
- }, /* 226 = filler */
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 226 = timer_delete */
{
ns(struct linux_sys_clock_settime_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/amd64/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/amd64/linux_systrace_args.c:1.15 src/sys/compat/linux/arch/amd64/linux_systrace_args.c:1.16
--- src/sys/compat/linux/arch/amd64/linux_systrace_args.c:1.15 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/amd64/linux_systrace_args.c Sun Sep 19 23:02:22 2021
@@ -1,7 +1,7 @@
-/* $NetBSD: linux_systrace_args.c,v 1.15 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.16 2021/09/19 23:02:22 thorpej Exp $ */
/*
- * System call argument to DTrace register array converstion.
+ * System call argument to DTrace register array conversion.
*
* DO NOT EDIT-- this file is automatically generated.
* This file is part of the DTrace syscall provider.
@@ -1519,6 +1519,47 @@ systrace_args(register_t sysnum, const v
*n_args = 4;
break;
}
+ /* linux_sys_timer_create */
+ case 222: {
+ const struct linux_sys_timer_create_args *p = params;
+ iarg[0] = SCARG(p, clockid); /* clockid_t */
+ uarg[1] = (intptr_t) SCARG(p, evp); /* struct linux_sigevent * */
+ uarg[2] = (intptr_t) SCARG(p, timerid); /* timer_t * */
+ *n_args = 3;
+ break;
+ }
+ /* linux_sys_timer_settime */
+ case 223: {
+ const struct linux_sys_timer_settime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ iarg[1] = SCARG(p, flags); /* int */
+ uarg[2] = (intptr_t) SCARG(p, tim); /* const struct linux_itimerspec * */
+ uarg[3] = (intptr_t) SCARG(p, otim); /* struct linux_itimerspec * */
+ *n_args = 4;
+ break;
+ }
+ /* linux_sys_timer_gettime */
+ case 224: {
+ const struct linux_sys_timer_gettime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ uarg[1] = (intptr_t) SCARG(p, tim); /* struct linux_itimerspec * */
+ *n_args = 2;
+ break;
+ }
+ /* sys_timer_getoverrun */
+ case 225: {
+ const struct sys_timer_getoverrun_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
+ /* sys_timer_delete */
+ case 226: {
+ const struct sys_timer_delete_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
/* linux_sys_clock_settime */
case 227: {
const struct linux_sys_clock_settime_args *p = params;
@@ -4289,6 +4330,74 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux_sys_timer_create */
+ case 222:
+ switch(ndx) {
+ case 0:
+ p = "clockid_t";
+ break;
+ case 1:
+ p = "struct linux_sigevent *";
+ break;
+ case 2:
+ p = "timer_t *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux_sys_timer_settime */
+ case 223:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "int";
+ break;
+ case 2:
+ p = "const struct linux_itimerspec *";
+ break;
+ case 3:
+ p = "struct linux_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux_sys_timer_gettime */
+ case 224:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "struct linux_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_getoverrun */
+ case 225:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_delete */
+ case 226:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux_sys_clock_settime */
case 227:
switch(ndx) {
@@ -5696,6 +5805,31 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux_sys_timer_create */
+ case 222:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux_sys_timer_settime */
+ case 223:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux_sys_timer_gettime */
+ case 224:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_getoverrun */
+ case 225:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_delete */
+ case 226:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux_sys_clock_settime */
case 227:
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.82 src/sys/compat/linux/arch/arm/linux_syscall.h:1.83
--- src/sys/compat/linux/arch/arm/linux_syscall.h:1.82 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/arm/linux_syscall.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.82 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.69 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -625,6 +625,21 @@
/* syscall: "set_tid_address" ret: "int" args: "int *" */
#define LINUX_SYS_set_tid_address 256
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux_sigevent *" "timer_t *" */
+#define LINUX_SYS_timer_create 257
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_settime 258
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_gettime 259
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_getoverrun 260
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_delete 261
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "struct linux_timespec *" */
#define LINUX_SYS_clock_settime 262
Index: src/sys/compat/linux/arch/arm/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.82 src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.83
--- src/sys/compat/linux/arch/arm/linux_syscallargs.h:1.82 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/arm/linux_syscallargs.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.82 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.69 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -914,6 +914,31 @@ struct linux_sys_set_tid_address_args {
};
check_syscall_args(linux_sys_set_tid_address)
+struct linux_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux_sys_timer_create)
+
+struct linux_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux_itimerspec *) tim;
+ syscallarg(struct linux_itimerspec *) otim;
+};
+check_syscall_args(linux_sys_timer_settime)
+
+struct linux_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux_itimerspec *) tim;
+};
+check_syscall_args(linux_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(struct linux_timespec *) tp;
@@ -1520,6 +1545,16 @@ int linux_sys_exit_group(struct lwp *, c
int linux_sys_set_tid_address(struct lwp *, const struct linux_sys_set_tid_address_args *, register_t *);
+int linux_sys_timer_create(struct lwp *, const struct linux_sys_timer_create_args *, register_t *);
+
+int linux_sys_timer_settime(struct lwp *, const struct linux_sys_timer_settime_args *, register_t *);
+
+int linux_sys_timer_gettime(struct lwp *, const struct linux_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux_sys_clock_settime(struct lwp *, const struct linux_sys_clock_settime_args *, register_t *);
int linux_sys_clock_gettime(struct lwp *, const struct linux_sys_clock_gettime_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.82 src/sys/compat/linux/arch/arm/linux_syscalls.c:1.83
--- src/sys/compat/linux/arch/arm/linux_syscalls.c:1.82 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/arm/linux_syscalls.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.82 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.69 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.82 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -292,11 +292,11 @@ const char *const linux_syscallnames[] =
/* 254 */ "#254 (unimplemented set_thread_area)",
/* 255 */ "#255 (unimplemented get_thread_area)",
/* 256 */ "set_tid_address",
- /* 257 */ "#257 (unimplemented timer_create)",
- /* 258 */ "#258 (unimplemented timer_settime)",
- /* 259 */ "#259 (unimplemented timer_gettime)",
- /* 260 */ "#260 (unimplemented timer_getoverrun)",
- /* 261 */ "#261 (unimplemented timer_delete)",
+ /* 257 */ "timer_create",
+ /* 258 */ "timer_settime",
+ /* 259 */ "timer_gettime",
+ /* 260 */ "timer_getoverrun",
+ /* 261 */ "timer_delete",
/* 262 */ "clock_settime",
/* 263 */ "clock_gettime",
/* 264 */ "clock_getres",
@@ -814,11 +814,11 @@ const char *const altlinux_syscallnames[
/* 254 */ NULL, /* unimplemented set_thread_area */
/* 255 */ NULL, /* unimplemented get_thread_area */
/* 256 */ NULL, /* set_tid_address */
- /* 257 */ NULL, /* unimplemented timer_create */
- /* 258 */ NULL, /* unimplemented timer_settime */
- /* 259 */ NULL, /* unimplemented timer_gettime */
- /* 260 */ NULL, /* unimplemented timer_getoverrun */
- /* 261 */ NULL, /* unimplemented timer_delete */
+ /* 257 */ NULL, /* timer_create */
+ /* 258 */ NULL, /* timer_settime */
+ /* 259 */ NULL, /* timer_gettime */
+ /* 260 */ NULL, /* timer_getoverrun */
+ /* 261 */ NULL, /* timer_delete */
/* 262 */ NULL, /* clock_settime */
/* 263 */ NULL, /* clock_gettime */
/* 264 */ NULL, /* clock_getres */
Index: src/sys/compat/linux/arch/arm/linux_sysent.c
diff -u src/sys/compat/linux/arch/arm/linux_sysent.c:1.82 src/sys/compat/linux/arch/arm/linux_sysent.c:1.83
--- src/sys/compat/linux/arch/arm/linux_sysent.c:1.82 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/arm/linux_sysent.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.82 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.69 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.82 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1116,20 +1116,28 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_set_tid_address
}, /* 256 = set_tid_address */
{
- .sy_call = linux_sys_nosys,
- }, /* 257 = filler */
+ ns(struct linux_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_create
+ }, /* 257 = timer_create */
{
- .sy_call = linux_sys_nosys,
- }, /* 258 = filler */
+ ns(struct linux_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_settime
+ }, /* 258 = timer_settime */
{
- .sy_call = linux_sys_nosys,
- }, /* 259 = filler */
+ ns(struct linux_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_gettime
+ }, /* 259 = timer_gettime */
{
- .sy_call = linux_sys_nosys,
- }, /* 260 = filler */
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 260 = timer_getoverrun */
{
- .sy_call = linux_sys_nosys,
- }, /* 261 = filler */
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 261 = timer_delete */
{
ns(struct linux_sys_clock_settime_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/arm/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.15 src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.16
--- src/sys/compat/linux/arch/arm/linux_systrace_args.c:1.15 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/arm/linux_systrace_args.c Sun Sep 19 23:02:22 2021
@@ -1,7 +1,7 @@
-/* $NetBSD: linux_systrace_args.c,v 1.15 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.16 2021/09/19 23:02:22 thorpej Exp $ */
/*
- * System call argument to DTrace register array converstion.
+ * System call argument to DTrace register array conversion.
*
* DO NOT EDIT-- this file is automatically generated.
* This file is part of the DTrace syscall provider.
@@ -1597,6 +1597,47 @@ systrace_args(register_t sysnum, const v
*n_args = 1;
break;
}
+ /* linux_sys_timer_create */
+ case 257: {
+ const struct linux_sys_timer_create_args *p = params;
+ iarg[0] = SCARG(p, clockid); /* clockid_t */
+ uarg[1] = (intptr_t) SCARG(p, evp); /* struct linux_sigevent * */
+ uarg[2] = (intptr_t) SCARG(p, timerid); /* timer_t * */
+ *n_args = 3;
+ break;
+ }
+ /* linux_sys_timer_settime */
+ case 258: {
+ const struct linux_sys_timer_settime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ iarg[1] = SCARG(p, flags); /* int */
+ uarg[2] = (intptr_t) SCARG(p, tim); /* const struct linux_itimerspec * */
+ uarg[3] = (intptr_t) SCARG(p, otim); /* struct linux_itimerspec * */
+ *n_args = 4;
+ break;
+ }
+ /* linux_sys_timer_gettime */
+ case 259: {
+ const struct linux_sys_timer_gettime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ uarg[1] = (intptr_t) SCARG(p, tim); /* struct linux_itimerspec * */
+ *n_args = 2;
+ break;
+ }
+ /* sys_timer_getoverrun */
+ case 260: {
+ const struct sys_timer_getoverrun_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
+ /* sys_timer_delete */
+ case 261: {
+ const struct sys_timer_delete_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
/* linux_sys_clock_settime */
case 262: {
const struct linux_sys_clock_settime_args *p = params;
@@ -4468,6 +4509,74 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux_sys_timer_create */
+ case 257:
+ switch(ndx) {
+ case 0:
+ p = "clockid_t";
+ break;
+ case 1:
+ p = "struct linux_sigevent *";
+ break;
+ case 2:
+ p = "timer_t *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux_sys_timer_settime */
+ case 258:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "int";
+ break;
+ case 2:
+ p = "const struct linux_itimerspec *";
+ break;
+ case 3:
+ p = "struct linux_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux_sys_timer_gettime */
+ case 259:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "struct linux_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_getoverrun */
+ case 260:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_delete */
+ case 261:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux_sys_clock_settime */
case 262:
switch(ndx) {
@@ -6001,6 +6110,31 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux_sys_timer_create */
+ case 257:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux_sys_timer_settime */
+ case 258:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux_sys_timer_gettime */
+ case 259:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_getoverrun */
+ case 260:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_delete */
+ case 261:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux_sys_clock_settime */
case 262:
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.116 src/sys/compat/linux/arch/i386/linux_syscall.h:1.117
--- src/sys/compat/linux/arch/i386/linux_syscall.h:1.116 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/i386/linux_syscall.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.116 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.117 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.124 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -647,6 +647,21 @@
/* syscall: "set_tid_address" ret: "int" args: "int *" */
#define LINUX_SYS_set_tid_address 258
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux_sigevent *" "timer_t *" */
+#define LINUX_SYS_timer_create 259
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_settime 260
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_gettime 261
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_getoverrun 262
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_delete 263
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "struct linux_timespec *" */
#define LINUX_SYS_clock_settime 264
Index: src/sys/compat/linux/arch/i386/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/i386/linux_syscallargs.h:1.116 src/sys/compat/linux/arch/i386/linux_syscallargs.h:1.117
--- src/sys/compat/linux/arch/i386/linux_syscallargs.h:1.116 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/i386/linux_syscallargs.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.116 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.117 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.124 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -961,6 +961,31 @@ struct linux_sys_set_tid_address_args {
};
check_syscall_args(linux_sys_set_tid_address)
+struct linux_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux_sys_timer_create)
+
+struct linux_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux_itimerspec *) tim;
+ syscallarg(struct linux_itimerspec *) otim;
+};
+check_syscall_args(linux_sys_timer_settime)
+
+struct linux_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux_itimerspec *) tim;
+};
+check_syscall_args(linux_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(struct linux_timespec *) tp;
@@ -1546,6 +1571,16 @@ int linux_sys_exit_group(struct lwp *, c
int linux_sys_set_tid_address(struct lwp *, const struct linux_sys_set_tid_address_args *, register_t *);
+int linux_sys_timer_create(struct lwp *, const struct linux_sys_timer_create_args *, register_t *);
+
+int linux_sys_timer_settime(struct lwp *, const struct linux_sys_timer_settime_args *, register_t *);
+
+int linux_sys_timer_gettime(struct lwp *, const struct linux_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux_sys_clock_settime(struct lwp *, const struct linux_sys_clock_settime_args *, register_t *);
int linux_sys_clock_gettime(struct lwp *, const struct linux_sys_clock_gettime_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.116 src/sys/compat/linux/arch/i386/linux_sysent.c:1.117
--- src/sys/compat/linux/arch/i386/linux_sysent.c:1.116 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/i386/linux_sysent.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.116 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.117 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.124 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.116 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.117 2021/09/19 23:02:22 thorpej Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1135,20 +1135,28 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_set_tid_address
}, /* 258 = set_tid_address */
{
- .sy_call = linux_sys_nosys,
- }, /* 259 = filler */
+ ns(struct linux_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_create
+ }, /* 259 = timer_create */
{
- .sy_call = linux_sys_nosys,
- }, /* 260 = filler */
+ ns(struct linux_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_settime
+ }, /* 260 = timer_settime */
{
- .sy_call = linux_sys_nosys,
- }, /* 261 = filler */
+ ns(struct linux_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_gettime
+ }, /* 261 = timer_gettime */
{
- .sy_call = linux_sys_nosys,
- }, /* 262 = filler */
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 262 = timer_getoverrun */
{
- .sy_call = linux_sys_nosys,
- }, /* 263 = filler */
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 263 = timer_delete */
{
ns(struct linux_sys_clock_settime_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/i386/linux_syscalls.c
diff -u src/sys/compat/linux/arch/i386/linux_syscalls.c:1.117 src/sys/compat/linux/arch/i386/linux_syscalls.c:1.118
--- src/sys/compat/linux/arch/i386/linux_syscalls.c:1.117 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/i386/linux_syscalls.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.117 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.118 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.124 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.117 2020/04/26 19:20:18 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.118 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -293,11 +293,11 @@ const char *const linux_syscallnames[] =
/* 256 */ "#256 (unimplemented epoll_wait)",
/* 257 */ "#257 (unimplemented remap_file_pages)",
/* 258 */ "set_tid_address",
- /* 259 */ "#259 (unimplemented timer_create)",
- /* 260 */ "#260 (unimplemented timer_settime)",
- /* 261 */ "#261 (unimplemented timer_gettime)",
- /* 262 */ "#262 (unimplemented timer_getoverrun)",
- /* 263 */ "#263 (unimplemented timer_delete)",
+ /* 259 */ "timer_create",
+ /* 260 */ "timer_settime",
+ /* 261 */ "timer_gettime",
+ /* 262 */ "timer_getoverrun",
+ /* 263 */ "timer_delete",
/* 264 */ "clock_settime",
/* 265 */ "clock_gettime",
/* 266 */ "clock_getres",
@@ -815,11 +815,11 @@ const char *const altlinux_syscallnames[
/* 256 */ NULL, /* unimplemented epoll_wait */
/* 257 */ NULL, /* unimplemented remap_file_pages */
/* 258 */ NULL, /* set_tid_address */
- /* 259 */ NULL, /* unimplemented timer_create */
- /* 260 */ NULL, /* unimplemented timer_settime */
- /* 261 */ NULL, /* unimplemented timer_gettime */
- /* 262 */ NULL, /* unimplemented timer_getoverrun */
- /* 263 */ NULL, /* unimplemented timer_delete */
+ /* 259 */ NULL, /* timer_create */
+ /* 260 */ NULL, /* timer_settime */
+ /* 261 */ NULL, /* timer_gettime */
+ /* 262 */ NULL, /* timer_getoverrun */
+ /* 263 */ NULL, /* timer_delete */
/* 264 */ NULL, /* clock_settime */
/* 265 */ NULL, /* clock_gettime */
/* 266 */ NULL, /* clock_getres */
Index: src/sys/compat/linux/arch/i386/linux_systrace_args.c
diff -u src/sys/compat/linux/arch/i386/linux_systrace_args.c:1.11 src/sys/compat/linux/arch/i386/linux_systrace_args.c:1.12
--- src/sys/compat/linux/arch/i386/linux_systrace_args.c:1.11 Sun Apr 26 19:20:18 2020
+++ src/sys/compat/linux/arch/i386/linux_systrace_args.c Sun Sep 19 23:02:22 2021
@@ -1,7 +1,7 @@
-/* $NetBSD: linux_systrace_args.c,v 1.11 2020/04/26 19:20:18 thorpej Exp $ */
+/* $NetBSD: linux_systrace_args.c,v 1.12 2021/09/19 23:02:22 thorpej Exp $ */
/*
- * System call argument to DTrace register array converstion.
+ * System call argument to DTrace register array conversion.
*
* DO NOT EDIT-- this file is automatically generated.
* This file is part of the DTrace syscall provider.
@@ -1660,6 +1660,47 @@ systrace_args(register_t sysnum, const v
*n_args = 1;
break;
}
+ /* linux_sys_timer_create */
+ case 259: {
+ const struct linux_sys_timer_create_args *p = params;
+ iarg[0] = SCARG(p, clockid); /* clockid_t */
+ uarg[1] = (intptr_t) SCARG(p, evp); /* struct linux_sigevent * */
+ uarg[2] = (intptr_t) SCARG(p, timerid); /* timer_t * */
+ *n_args = 3;
+ break;
+ }
+ /* linux_sys_timer_settime */
+ case 260: {
+ const struct linux_sys_timer_settime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ iarg[1] = SCARG(p, flags); /* int */
+ uarg[2] = (intptr_t) SCARG(p, tim); /* const struct linux_itimerspec * */
+ uarg[3] = (intptr_t) SCARG(p, otim); /* struct linux_itimerspec * */
+ *n_args = 4;
+ break;
+ }
+ /* linux_sys_timer_gettime */
+ case 261: {
+ const struct linux_sys_timer_gettime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ uarg[1] = (intptr_t) SCARG(p, tim); /* struct linux_itimerspec * */
+ *n_args = 2;
+ break;
+ }
+ /* sys_timer_getoverrun */
+ case 262: {
+ const struct sys_timer_getoverrun_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
+ /* sys_timer_delete */
+ case 263: {
+ const struct sys_timer_delete_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
/* linux_sys_clock_settime */
case 264: {
const struct linux_sys_clock_settime_args *p = params;
@@ -4580,6 +4621,74 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux_sys_timer_create */
+ case 259:
+ switch(ndx) {
+ case 0:
+ p = "clockid_t";
+ break;
+ case 1:
+ p = "struct linux_sigevent *";
+ break;
+ case 2:
+ p = "timer_t *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux_sys_timer_settime */
+ case 260:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "int";
+ break;
+ case 2:
+ p = "const struct linux_itimerspec *";
+ break;
+ case 3:
+ p = "struct linux_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux_sys_timer_gettime */
+ case 261:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "struct linux_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_getoverrun */
+ case 262:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_delete */
+ case 263:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux_sys_clock_settime */
case 264:
switch(ndx) {
@@ -6064,6 +6173,31 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux_sys_timer_create */
+ case 259:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux_sys_timer_settime */
+ case 260:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux_sys_timer_gettime */
+ case 261:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_getoverrun */
+ case 262:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_delete */
+ case 263:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux_sys_clock_settime */
case 264:
if (ndx == 0 || ndx == 1)
Index: src/sys/compat/linux/arch/m68k/linux_syscall.h
diff -u src/sys/compat/linux/arch/m68k/linux_syscall.h:1.108 src/sys/compat/linux/arch/m68k/linux_syscall.h:1.109
--- src/sys/compat/linux/arch/m68k/linux_syscall.h:1.108 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/m68k/linux_syscall.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.108 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.109 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.95 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -630,6 +630,21 @@
/* syscall: "set_tid_address" ret: "int" args: "int *" */
#define LINUX_SYS_set_tid_address 253
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux_sigevent *" "timer_t *" */
+#define LINUX_SYS_timer_create 254
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_settime 255
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_gettime 256
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_getoverrun 257
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_delete 258
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "struct linux_timespec *" */
#define LINUX_SYS_clock_settime 259
Index: src/sys/compat/linux/arch/m68k/linux_syscalls.c
diff -u src/sys/compat/linux/arch/m68k/linux_syscalls.c:1.108 src/sys/compat/linux/arch/m68k/linux_syscalls.c:1.109
--- src/sys/compat/linux/arch/m68k/linux_syscalls.c:1.108 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/m68k/linux_syscalls.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.108 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.95 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.108 2020/04/26 19:20:19 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@@ -308,11 +308,11 @@ const char *const linux_syscallnames[] =
/* 251 */ "#251 (unimplemented epoll_wait)",
/* 252 */ "#252 (unimplemented remap_file_pages)",
/* 253 */ "set_tid_address",
- /* 254 */ "#254 (unimplemented timer_create)",
- /* 255 */ "#255 (unimplemented timer_settime)",
- /* 256 */ "#256 (unimplemented timer_gettime)",
- /* 257 */ "#257 (unimplemented timer_getoverrun)",
- /* 258 */ "#258 (unimplemented timer_ delete)",
+ /* 254 */ "timer_create",
+ /* 255 */ "timer_settime",
+ /* 256 */ "timer_gettime",
+ /* 257 */ "timer_getoverrun",
+ /* 258 */ "timer_delete",
/* 259 */ "clock_settime",
/* 260 */ "clock_gettime",
/* 261 */ "clock_getres",
@@ -846,11 +846,11 @@ const char *const altlinux_syscallnames[
/* 251 */ NULL, /* unimplemented epoll_wait */
/* 252 */ NULL, /* unimplemented remap_file_pages */
/* 253 */ NULL, /* set_tid_address */
- /* 254 */ NULL, /* unimplemented timer_create */
- /* 255 */ NULL, /* unimplemented timer_settime */
- /* 256 */ NULL, /* unimplemented timer_gettime */
- /* 257 */ NULL, /* unimplemented timer_getoverrun */
- /* 258 */ NULL, /* unimplemented timer_ delete */
+ /* 254 */ NULL, /* timer_create */
+ /* 255 */ NULL, /* timer_settime */
+ /* 256 */ NULL, /* timer_gettime */
+ /* 257 */ NULL, /* timer_getoverrun */
+ /* 258 */ NULL, /* timer_delete */
/* 259 */ NULL, /* clock_settime */
/* 260 */ NULL, /* clock_gettime */
/* 261 */ NULL, /* clock_getres */
Index: src/sys/compat/linux/arch/m68k/linux_sysent.c
diff -u src/sys/compat/linux/arch/m68k/linux_sysent.c:1.108 src/sys/compat/linux/arch/m68k/linux_sysent.c:1.109
--- src/sys/compat/linux/arch/m68k/linux_sysent.c:1.108 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/m68k/linux_sysent.c Sun Sep 19 23:02:22 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.108 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.95 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.108 2020/04/26 19:20:19 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include "opt_compat_netbsd.h"
@@ -1126,20 +1126,28 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_set_tid_address
}, /* 253 = set_tid_address */
{
- .sy_call = linux_sys_nosys,
- }, /* 254 = filler */
+ ns(struct linux_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_create
+ }, /* 254 = timer_create */
{
- .sy_call = linux_sys_nosys,
- }, /* 255 = filler */
+ ns(struct linux_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_settime
+ }, /* 255 = timer_settime */
{
- .sy_call = linux_sys_nosys,
- }, /* 256 = filler */
+ ns(struct linux_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_gettime
+ }, /* 256 = timer_gettime */
{
- .sy_call = linux_sys_nosys,
- }, /* 257 = filler */
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 257 = timer_getoverrun */
{
- .sy_call = linux_sys_nosys,
- }, /* 258 = filler */
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 258 = timer_delete */
{
ns(struct linux_sys_clock_settime_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/m68k/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/m68k/linux_syscallargs.h:1.107 src/sys/compat/linux/arch/m68k/linux_syscallargs.h:1.108
--- src/sys/compat/linux/arch/m68k/linux_syscallargs.h:1.107 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/m68k/linux_syscallargs.h Sun Sep 19 23:02:22 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.107 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.108 2021/09/19 23:02:22 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.95 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -908,6 +908,31 @@ struct linux_sys_set_tid_address_args {
};
check_syscall_args(linux_sys_set_tid_address)
+struct linux_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux_sys_timer_create)
+
+struct linux_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux_itimerspec *) tim;
+ syscallarg(struct linux_itimerspec *) otim;
+};
+check_syscall_args(linux_sys_timer_settime)
+
+struct linux_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux_itimerspec *) tim;
+};
+check_syscall_args(linux_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(struct linux_timespec *) tp;
@@ -1524,6 +1549,16 @@ int linux_sys_fadvise64(struct lwp *, co
int linux_sys_set_tid_address(struct lwp *, const struct linux_sys_set_tid_address_args *, register_t *);
+int linux_sys_timer_create(struct lwp *, const struct linux_sys_timer_create_args *, register_t *);
+
+int linux_sys_timer_settime(struct lwp *, const struct linux_sys_timer_settime_args *, register_t *);
+
+int linux_sys_timer_gettime(struct lwp *, const struct linux_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux_sys_clock_settime(struct lwp *, const struct linux_sys_clock_settime_args *, register_t *);
int linux_sys_clock_gettime(struct lwp *, const struct linux_sys_clock_gettime_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.80 src/sys/compat/linux/arch/mips/linux_syscall.h:1.81
--- src/sys/compat/linux/arch/mips/linux_syscall.h:1.80 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/mips/linux_syscall.h Sun Sep 19 23:02:23 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.80 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.81 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.68 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -610,6 +610,21 @@
/* syscall: "fstatfs64" ret: "int" args: "int" "size_t" "struct linux_statfs64 *" */
#define LINUX_SYS_fstatfs64 256
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux_sigevent *" "timer_t *" */
+#define LINUX_SYS_timer_create 257
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_settime 258
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_gettime 259
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_getoverrun 260
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_delete 261
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "struct linux_timespec *" */
#define LINUX_SYS_clock_settime 262
Index: src/sys/compat/linux/arch/mips/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.79 src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.80
--- src/sys/compat/linux/arch/mips/linux_syscallargs.h:1.79 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/mips/linux_syscallargs.h Sun Sep 19 23:02:23 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.79 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.80 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.68 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -977,6 +977,31 @@ struct linux_sys_fstatfs64_args {
};
check_syscall_args(linux_sys_fstatfs64)
+struct linux_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux_sys_timer_create)
+
+struct linux_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux_itimerspec *) tim;
+ syscallarg(struct linux_itimerspec *) otim;
+};
+check_syscall_args(linux_sys_timer_settime)
+
+struct linux_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux_itimerspec *) tim;
+};
+check_syscall_args(linux_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(struct linux_timespec *) tp;
@@ -1564,6 +1589,16 @@ int linux_sys_statfs64(struct lwp *, con
int linux_sys_fstatfs64(struct lwp *, const struct linux_sys_fstatfs64_args *, register_t *);
+int linux_sys_timer_create(struct lwp *, const struct linux_sys_timer_create_args *, register_t *);
+
+int linux_sys_timer_settime(struct lwp *, const struct linux_sys_timer_settime_args *, register_t *);
+
+int linux_sys_timer_gettime(struct lwp *, const struct linux_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux_sys_clock_settime(struct lwp *, const struct linux_sys_clock_settime_args *, register_t *);
int linux_sys_clock_gettime(struct lwp *, const struct linux_sys_clock_gettime_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.79 src/sys/compat/linux/arch/mips/linux_syscalls.c:1.80
--- src/sys/compat/linux/arch/mips/linux_syscalls.c:1.79 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/mips/linux_syscalls.c Sun Sep 19 23:02:23 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.79 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.68 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.79 2020/04/26 19:20:19 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -287,11 +287,11 @@ const char *const linux_syscallnames[] =
/* 254 */ "fadvise64",
/* 255 */ "statfs64",
/* 256 */ "fstatfs64",
- /* 257 */ "#257 (unimplemented timer_create)",
- /* 258 */ "#258 (unimplemented timer_settime)",
- /* 259 */ "#259 (unimplemented timer_gettime)",
- /* 260 */ "#260 (unimplemented timer_getoverrun)",
- /* 261 */ "#261 (unimplemented timer_delete)",
+ /* 257 */ "timer_create",
+ /* 258 */ "timer_settime",
+ /* 259 */ "timer_gettime",
+ /* 260 */ "timer_getoverrun",
+ /* 261 */ "timer_delete",
/* 262 */ "clock_settime",
/* 263 */ "clock_gettime",
/* 264 */ "clock_getres",
@@ -804,11 +804,11 @@ const char *const altlinux_syscallnames[
/* 254 */ NULL, /* fadvise64 */
/* 255 */ NULL, /* statfs64 */
/* 256 */ NULL, /* fstatfs64 */
- /* 257 */ NULL, /* unimplemented timer_create */
- /* 258 */ NULL, /* unimplemented timer_settime */
- /* 259 */ NULL, /* unimplemented timer_gettime */
- /* 260 */ NULL, /* unimplemented timer_getoverrun */
- /* 261 */ NULL, /* unimplemented timer_delete */
+ /* 257 */ NULL, /* timer_create */
+ /* 258 */ NULL, /* timer_settime */
+ /* 259 */ NULL, /* timer_gettime */
+ /* 260 */ NULL, /* timer_getoverrun */
+ /* 261 */ NULL, /* timer_delete */
/* 262 */ NULL, /* clock_settime */
/* 263 */ NULL, /* clock_gettime */
/* 264 */ NULL, /* clock_getres */
Index: src/sys/compat/linux/arch/mips/linux_sysent.c
diff -u src/sys/compat/linux/arch/mips/linux_sysent.c:1.79 src/sys/compat/linux/arch/mips/linux_sysent.c:1.80
--- src/sys/compat/linux/arch/mips/linux_sysent.c:1.79 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/mips/linux_sysent.c Sun Sep 19 23:02:23 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.79 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.68 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.79 2020/04/26 19:20:19 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1121,20 +1121,28 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_fstatfs64
}, /* 256 = fstatfs64 */
{
- .sy_call = linux_sys_nosys,
- }, /* 257 = filler */
+ ns(struct linux_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_create
+ }, /* 257 = timer_create */
{
- .sy_call = linux_sys_nosys,
- }, /* 258 = filler */
+ ns(struct linux_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_settime
+ }, /* 258 = timer_settime */
{
- .sy_call = linux_sys_nosys,
- }, /* 259 = filler */
+ ns(struct linux_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_gettime
+ }, /* 259 = timer_gettime */
{
- .sy_call = linux_sys_nosys,
- }, /* 260 = filler */
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 260 = timer_getoverrun */
{
- .sy_call = linux_sys_nosys,
- }, /* 261 = filler */
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 261 = timer_delete */
{
ns(struct linux_sys_clock_settime_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/powerpc/linux_syscall.h
diff -u src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.86 src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.87
--- src/sys/compat/linux/arch/powerpc/linux_syscall.h:1.86 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/powerpc/linux_syscall.h Sun Sep 19 23:02:23 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscall.h,v 1.86 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscall.h,v 1.87 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.74 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALL_H_
@@ -573,6 +573,21 @@
/* syscall: "exit_group" ret: "int" args: "int" */
#define LINUX_SYS_exit_group 234
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux_sigevent *" "timer_t *" */
+#define LINUX_SYS_timer_create 240
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_settime 241
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux_itimerspec *" */
+#define LINUX_SYS_timer_gettime 242
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_getoverrun 243
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX_SYS_timer_delete 244
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "struct linux_timespec *" */
#define LINUX_SYS_clock_settime 245
Index: src/sys/compat/linux/arch/powerpc/linux_sysent.c
diff -u src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.86 src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.87
--- src/sys/compat/linux/arch/powerpc/linux_sysent.c:1.86 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/powerpc/linux_sysent.c Sun Sep 19 23:02:23 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_sysent.c,v 1.86 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_sysent.c,v 1.87 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.74 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.86 2020/04/26 19:20:19 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.87 2021/09/19 23:02:23 thorpej Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -1045,20 +1045,28 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 239 = filler */
{
- .sy_call = linux_sys_nosys,
- }, /* 240 = filler */
+ ns(struct linux_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_create
+ }, /* 240 = timer_create */
{
- .sy_call = linux_sys_nosys,
- }, /* 241 = filler */
+ ns(struct linux_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_settime
+ }, /* 241 = timer_settime */
{
- .sy_call = linux_sys_nosys,
- }, /* 242 = filler */
+ ns(struct linux_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux_sys_timer_gettime
+ }, /* 242 = timer_gettime */
{
- .sy_call = linux_sys_nosys,
- }, /* 243 = filler */
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 243 = timer_getoverrun */
{
- .sy_call = linux_sys_nosys,
- }, /* 244 = filler */
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 244 = timer_delete */
{
ns(struct linux_sys_clock_settime_args),
.sy_flags = SYCALL_ARG_PTR,
Index: src/sys/compat/linux/arch/powerpc/linux_syscallargs.h
diff -u src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.85 src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.86
--- src/sys/compat/linux/arch/powerpc/linux_syscallargs.h:1.85 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/powerpc/linux_syscallargs.h Sun Sep 19 23:02:23 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux_syscallargs.h,v 1.85 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscallargs.h,v 1.86 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.74 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX_SYS_SYSCALLARGS_H_
@@ -847,6 +847,31 @@ struct linux_sys_exit_group_args {
};
check_syscall_args(linux_sys_exit_group)
+struct linux_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux_sys_timer_create)
+
+struct linux_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux_itimerspec *) tim;
+ syscallarg(struct linux_itimerspec *) otim;
+};
+check_syscall_args(linux_sys_timer_settime)
+
+struct linux_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux_itimerspec *) tim;
+};
+check_syscall_args(linux_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(struct linux_timespec *) tp;
@@ -1423,6 +1448,16 @@ int linux_sys_fadvise64(struct lwp *, co
int linux_sys_exit_group(struct lwp *, const struct linux_sys_exit_group_args *, register_t *);
+int linux_sys_timer_create(struct lwp *, const struct linux_sys_timer_create_args *, register_t *);
+
+int linux_sys_timer_settime(struct lwp *, const struct linux_sys_timer_settime_args *, register_t *);
+
+int linux_sys_timer_gettime(struct lwp *, const struct linux_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux_sys_clock_settime(struct lwp *, const struct linux_sys_clock_settime_args *, register_t *);
int linux_sys_clock_gettime(struct lwp *, const struct linux_sys_clock_gettime_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.85 src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.86
--- src/sys/compat/linux/arch/powerpc/linux_syscalls.c:1.85 Sun Apr 26 19:20:19 2020
+++ src/sys/compat/linux/arch/powerpc/linux_syscalls.c Sun Sep 19 23:02:23 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux_syscalls.c,v 1.85 2020/04/26 19:20:19 thorpej Exp $ */
+/* $NetBSD: linux_syscalls.c,v 1.86 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.74 2020/04/26 18:53:32 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.85 2020/04/26 19:20:19 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.86 2021/09/19 23:02:23 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -273,11 +273,11 @@ const char *const linux_syscallnames[] =
/* 237 */ "#237 (unimplemented epoll_ctl)",
/* 238 */ "#238 (unimplemented epoll_wait)",
/* 239 */ "#239 (unimplemented remap_file_pages)",
- /* 240 */ "#240 (unimplemented timer_create)",
- /* 241 */ "#241 (unimplemented timer_settime)",
- /* 242 */ "#242 (unimplemented timer_gettime)",
- /* 243 */ "#243 (unimplemented timer_getoverrun)",
- /* 244 */ "#244 (unimplemented timer_delete)",
+ /* 240 */ "timer_create",
+ /* 241 */ "timer_settime",
+ /* 242 */ "timer_gettime",
+ /* 243 */ "timer_getoverrun",
+ /* 244 */ "timer_delete",
/* 245 */ "clock_settime",
/* 246 */ "clock_gettime",
/* 247 */ "clock_getres",
@@ -795,11 +795,11 @@ const char *const altlinux_syscallnames[
/* 237 */ NULL, /* unimplemented epoll_ctl */
/* 238 */ NULL, /* unimplemented epoll_wait */
/* 239 */ NULL, /* unimplemented remap_file_pages */
- /* 240 */ NULL, /* unimplemented timer_create */
- /* 241 */ NULL, /* unimplemented timer_settime */
- /* 242 */ NULL, /* unimplemented timer_gettime */
- /* 243 */ NULL, /* unimplemented timer_getoverrun */
- /* 244 */ NULL, /* unimplemented timer_delete */
+ /* 240 */ NULL, /* timer_create */
+ /* 241 */ NULL, /* timer_settime */
+ /* 242 */ NULL, /* timer_gettime */
+ /* 243 */ NULL, /* timer_getoverrun */
+ /* 244 */ NULL, /* timer_delete */
/* 245 */ NULL, /* clock_settime */
/* 246 */ NULL, /* clock_gettime */
/* 247 */ NULL, /* clock_getres */
Index: src/sys/compat/linux32/arch/amd64/linux32_syscall.h
diff -u src/sys/compat/linux32/arch/amd64/linux32_syscall.h:1.81 src/sys/compat/linux32/arch/amd64/linux32_syscall.h:1.82
--- src/sys/compat/linux32/arch/amd64/linux32_syscall.h:1.81 Sun Apr 26 19:20:58 2020
+++ src/sys/compat/linux32/arch/amd64/linux32_syscall.h Sun Sep 19 23:02:23 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux32_syscall.h,v 1.81 2020/04/26 19:20:58 thorpej Exp $ */
+/* $NetBSD: linux32_syscall.h,v 1.82 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.71 2020/04/26 18:53:33 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.72 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX32_SYS_SYSCALL_H_
@@ -627,6 +627,21 @@
/* syscall: "set_tid_address" ret: "int" args: "linux32_intp_t" */
#define LINUX32_SYS_set_tid_address 258
+/* syscall: "timer_create" ret: "int" args: "clockid_t" "struct linux32_sigevent *" "timer_t *" */
+#define LINUX32_SYS_timer_create 259
+
+/* syscall: "timer_settime" ret: "int" args: "timer_t" "int" "const struct linux32_itimerspec *" "struct linux32_itimerspec *" */
+#define LINUX32_SYS_timer_settime 260
+
+/* syscall: "timer_gettime" ret: "int" args: "timer_t" "struct linux32_itimerspec *" */
+#define LINUX32_SYS_timer_gettime 261
+
+/* syscall: "timer_getoverrun" ret: "int" args: "timer_t" */
+#define LINUX32_SYS_timer_getoverrun 262
+
+/* syscall: "timer_delete" ret: "int" args: "timer_t" */
+#define LINUX32_SYS_timer_delete 263
+
/* syscall: "clock_settime" ret: "int" args: "clockid_t" "linux32_timespecp_t" */
#define LINUX32_SYS_clock_settime 264
Index: src/sys/compat/linux32/arch/amd64/linux32_syscallargs.h
diff -u src/sys/compat/linux32/arch/amd64/linux32_syscallargs.h:1.81 src/sys/compat/linux32/arch/amd64/linux32_syscallargs.h:1.82
--- src/sys/compat/linux32/arch/amd64/linux32_syscallargs.h:1.81 Sun Apr 26 19:20:58 2020
+++ src/sys/compat/linux32/arch/amd64/linux32_syscallargs.h Sun Sep 19 23:02:23 2021
@@ -1,10 +1,10 @@
-/* $NetBSD: linux32_syscallargs.h,v 1.81 2020/04/26 19:20:58 thorpej Exp $ */
+/* $NetBSD: linux32_syscallargs.h,v 1.82 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.71 2020/04/26 18:53:33 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.72 2021/09/19 23:01:50 thorpej Exp
*/
#ifndef _LINUX32_SYS_SYSCALLARGS_H_
@@ -854,6 +854,31 @@ struct linux32_sys_set_tid_address_args
};
check_syscall_args(linux32_sys_set_tid_address)
+struct linux32_sys_timer_create_args {
+ syscallarg(clockid_t) clockid;
+ syscallarg(struct linux32_sigevent *) evp;
+ syscallarg(timer_t *) timerid;
+};
+check_syscall_args(linux32_sys_timer_create)
+
+struct linux32_sys_timer_settime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(int) flags;
+ syscallarg(const struct linux32_itimerspec *) tim;
+ syscallarg(struct linux32_itimerspec *) otim;
+};
+check_syscall_args(linux32_sys_timer_settime)
+
+struct linux32_sys_timer_gettime_args {
+ syscallarg(timer_t) timerid;
+ syscallarg(struct linux32_itimerspec *) tim;
+};
+check_syscall_args(linux32_sys_timer_gettime)
+
+struct sys_timer_getoverrun_args;
+
+struct sys_timer_delete_args;
+
struct linux32_sys_clock_settime_args {
syscallarg(clockid_t) which;
syscallarg(linux32_timespecp_t) tp;
@@ -1417,6 +1442,16 @@ int linux32_sys_exit_group(struct lwp *,
int linux32_sys_set_tid_address(struct lwp *, const struct linux32_sys_set_tid_address_args *, register_t *);
+int linux32_sys_timer_create(struct lwp *, const struct linux32_sys_timer_create_args *, register_t *);
+
+int linux32_sys_timer_settime(struct lwp *, const struct linux32_sys_timer_settime_args *, register_t *);
+
+int linux32_sys_timer_gettime(struct lwp *, const struct linux32_sys_timer_gettime_args *, register_t *);
+
+int sys_timer_getoverrun(struct lwp *, const struct sys_timer_getoverrun_args *, register_t *);
+
+int sys_timer_delete(struct lwp *, const struct sys_timer_delete_args *, register_t *);
+
int linux32_sys_clock_settime(struct lwp *, const struct linux32_sys_clock_settime_args *, register_t *);
int linux32_sys_clock_gettime(struct lwp *, const struct linux32_sys_clock_gettime_args *, register_t *);
Index: src/sys/compat/linux32/arch/amd64/linux32_syscalls.c
diff -u src/sys/compat/linux32/arch/amd64/linux32_syscalls.c:1.81 src/sys/compat/linux32/arch/amd64/linux32_syscalls.c:1.82
--- src/sys/compat/linux32/arch/amd64/linux32_syscalls.c:1.81 Sun Apr 26 19:20:58 2020
+++ src/sys/compat/linux32/arch/amd64/linux32_syscalls.c Sun Sep 19 23:02:23 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux32_syscalls.c,v 1.81 2020/04/26 19:20:58 thorpej Exp $ */
+/* $NetBSD: linux32_syscalls.c,v 1.82 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.71 2020/04/26 18:53:33 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.72 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.81 2020/04/26 19:20:58 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.82 2021/09/19 23:02:23 thorpej Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@@ -298,11 +298,11 @@ const char *const linux32_syscallnames[]
/* 256 */ "#256 (unimplemented epoll_wait)",
/* 257 */ "#257 (unimplemented remap_file_pages)",
/* 258 */ "set_tid_address",
- /* 259 */ "#259 (unimplemented timer_create)",
- /* 260 */ "#260 (unimplemented timer_settime)",
- /* 261 */ "#261 (unimplemented timer_gettime)",
- /* 262 */ "#262 (unimplemented timer_getoverrun)",
- /* 263 */ "#263 (unimplemented timer_delete)",
+ /* 259 */ "timer_create",
+ /* 260 */ "timer_settime",
+ /* 261 */ "timer_gettime",
+ /* 262 */ "timer_getoverrun",
+ /* 263 */ "timer_delete",
/* 264 */ "clock_settime",
/* 265 */ "clock_gettime",
/* 266 */ "clock_getres",
@@ -817,11 +817,11 @@ const char *const altlinux32_syscallname
/* 256 */ NULL, /* unimplemented epoll_wait */
/* 257 */ NULL, /* unimplemented remap_file_pages */
/* 258 */ NULL, /* set_tid_address */
- /* 259 */ NULL, /* unimplemented timer_create */
- /* 260 */ NULL, /* unimplemented timer_settime */
- /* 261 */ NULL, /* unimplemented timer_gettime */
- /* 262 */ NULL, /* unimplemented timer_getoverrun */
- /* 263 */ NULL, /* unimplemented timer_delete */
+ /* 259 */ NULL, /* timer_create */
+ /* 260 */ NULL, /* timer_settime */
+ /* 261 */ NULL, /* timer_gettime */
+ /* 262 */ NULL, /* timer_getoverrun */
+ /* 263 */ NULL, /* timer_delete */
/* 264 */ NULL, /* clock_settime */
/* 265 */ NULL, /* clock_gettime */
/* 266 */ NULL, /* clock_getres */
Index: src/sys/compat/linux32/arch/amd64/linux32_sysent.c
diff -u src/sys/compat/linux32/arch/amd64/linux32_sysent.c:1.81 src/sys/compat/linux32/arch/amd64/linux32_sysent.c:1.82
--- src/sys/compat/linux32/arch/amd64/linux32_sysent.c:1.81 Sun Apr 26 19:20:58 2020
+++ src/sys/compat/linux32/arch/amd64/linux32_sysent.c Sun Sep 19 23:02:23 2021
@@ -1,14 +1,14 @@
-/* $NetBSD: linux32_sysent.c,v 1.81 2020/04/26 19:20:58 thorpej Exp $ */
+/* $NetBSD: linux32_sysent.c,v 1.82 2021/09/19 23:02:23 thorpej Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from NetBSD: syscalls.master,v 1.71 2020/04/26 18:53:33 thorpej Exp
+ * created from NetBSD: syscalls.master,v 1.72 2021/09/19 23:01:50 thorpej Exp
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.81 2020/04/26 19:20:58 thorpej Exp $");
+__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.82 2021/09/19 23:02:23 thorpej Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@@ -999,20 +999,28 @@ struct sysent linux32_sysent[] = {
.sy_call = (sy_call_t *)linux32_sys_set_tid_address
}, /* 258 = set_tid_address */
{
- .sy_call = linux_sys_nosys,
- }, /* 259 = filler */
- {
- .sy_call = linux_sys_nosys,
- }, /* 260 = filler */
- {
- .sy_call = linux_sys_nosys,
- }, /* 261 = filler */
- {
- .sy_call = linux_sys_nosys,
- }, /* 262 = filler */
- {
- .sy_call = linux_sys_nosys,
- }, /* 263 = filler */
+ ns(struct linux32_sys_timer_create_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux32_sys_timer_create
+ }, /* 259 = timer_create */
+ {
+ ns(struct linux32_sys_timer_settime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux32_sys_timer_settime
+ }, /* 260 = timer_settime */
+ {
+ ns(struct linux32_sys_timer_gettime_args),
+ .sy_flags = SYCALL_ARG_PTR,
+ .sy_call = (sy_call_t *)linux32_sys_timer_gettime
+ }, /* 261 = timer_gettime */
+ {
+ ns(struct sys_timer_getoverrun_args),
+ .sy_call = (sy_call_t *)sys_timer_getoverrun
+ }, /* 262 = timer_getoverrun */
+ {
+ ns(struct sys_timer_delete_args),
+ .sy_call = (sy_call_t *)sys_timer_delete
+ }, /* 263 = timer_delete */
{
ns(struct linux32_sys_clock_settime_args),
.sy_call = (sy_call_t *)linux32_sys_clock_settime
Index: src/sys/compat/linux32/arch/amd64/linux32_systrace_args.c
diff -u src/sys/compat/linux32/arch/amd64/linux32_systrace_args.c:1.8 src/sys/compat/linux32/arch/amd64/linux32_systrace_args.c:1.9
--- src/sys/compat/linux32/arch/amd64/linux32_systrace_args.c:1.8 Sun Apr 26 19:20:58 2020
+++ src/sys/compat/linux32/arch/amd64/linux32_systrace_args.c Sun Sep 19 23:02:23 2021
@@ -1,7 +1,7 @@
-/* $NetBSD: linux32_systrace_args.c,v 1.8 2020/04/26 19:20:58 thorpej Exp $ */
+/* $NetBSD: linux32_systrace_args.c,v 1.9 2021/09/19 23:02:23 thorpej Exp $ */
/*
- * System call argument to DTrace register array converstion.
+ * System call argument to DTrace register array conversion.
*
* DO NOT EDIT-- this file is automatically generated.
* This file is part of the DTrace syscall provider.
@@ -1612,6 +1612,47 @@ systrace_args(register_t sysnum, const v
*n_args = 1;
break;
}
+ /* linux32_sys_timer_create */
+ case 259: {
+ const struct linux32_sys_timer_create_args *p = params;
+ iarg[0] = SCARG(p, clockid); /* clockid_t */
+ uarg[1] = (intptr_t) SCARG(p, evp); /* struct linux32_sigevent * */
+ uarg[2] = (intptr_t) SCARG(p, timerid); /* timer_t * */
+ *n_args = 3;
+ break;
+ }
+ /* linux32_sys_timer_settime */
+ case 260: {
+ const struct linux32_sys_timer_settime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ iarg[1] = SCARG(p, flags); /* int */
+ uarg[2] = (intptr_t) SCARG(p, tim); /* const struct linux32_itimerspec * */
+ uarg[3] = (intptr_t) SCARG(p, otim); /* struct linux32_itimerspec * */
+ *n_args = 4;
+ break;
+ }
+ /* linux32_sys_timer_gettime */
+ case 261: {
+ const struct linux32_sys_timer_gettime_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ uarg[1] = (intptr_t) SCARG(p, tim); /* struct linux32_itimerspec * */
+ *n_args = 2;
+ break;
+ }
+ /* sys_timer_getoverrun */
+ case 262: {
+ const struct sys_timer_getoverrun_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
+ /* sys_timer_delete */
+ case 263: {
+ const struct sys_timer_delete_args *p = params;
+ iarg[0] = SCARG(p, timerid); /* timer_t */
+ *n_args = 1;
+ break;
+ }
/* linux32_sys_clock_settime */
case 264: {
const struct linux32_sys_clock_settime_args *p = params;
@@ -4448,6 +4489,74 @@ systrace_entry_setargdesc(int sysnum, in
break;
};
break;
+ /* linux32_sys_timer_create */
+ case 259:
+ switch(ndx) {
+ case 0:
+ p = "clockid_t";
+ break;
+ case 1:
+ p = "struct linux32_sigevent *";
+ break;
+ case 2:
+ p = "timer_t *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux32_sys_timer_settime */
+ case 260:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "int";
+ break;
+ case 2:
+ p = "const struct linux32_itimerspec *";
+ break;
+ case 3:
+ p = "struct linux32_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* linux32_sys_timer_gettime */
+ case 261:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ case 1:
+ p = "struct linux32_itimerspec *";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_getoverrun */
+ case 262:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
+ /* sys_timer_delete */
+ case 263:
+ switch(ndx) {
+ case 0:
+ p = "timer_t";
+ break;
+ default:
+ break;
+ };
+ break;
/* linux32_sys_clock_settime */
case 264:
switch(ndx) {
@@ -5881,6 +5990,31 @@ systrace_return_setargdesc(int sysnum, i
if (ndx == 0 || ndx == 1)
p = "int";
break;
+ /* linux32_sys_timer_create */
+ case 259:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux32_sys_timer_settime */
+ case 260:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* linux32_sys_timer_gettime */
+ case 261:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_getoverrun */
+ case 262:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
+ /* sys_timer_delete */
+ case 263:
+ if (ndx == 0 || ndx == 1)
+ p = "int";
+ break;
/* linux32_sys_clock_settime */
case 264:
if (ndx == 0 || ndx == 1)