diff options
| author | thorpej <thorpej@NetBSD.org> | 2021-09-19 23:52:07 +0000 |
|---|---|---|
| committer | thorpej <thorpej@NetBSD.org> | 2021-09-19 23:52:07 +0000 |
| commit | 6f05636e3deb6ff1c6e06b58d412bcba265dccff (patch) | |
| tree | 44435e038d55bb41836f2fbefdf4521fe31b3598 /sys/compat/linux | |
| parent | 5390d1582c6299acd08a25ecfcd1d44d5dc34550 (diff) | |
Regen for timerfd.
Diffstat (limited to 'sys/compat/linux')
31 files changed, 695 insertions, 157 deletions
diff --git a/sys/compat/linux/arch/alpha/linux_syscall.h b/sys/compat/linux/arch/alpha/linux_syscall.h index 41911348836..8be349e6558 100644 --- a/sys/compat/linux/arch/alpha/linux_syscall.h +++ b/sys/compat/linux/arch/alpha/linux_syscall.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscall.h,v 1.111 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscall.h,v 1.112 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.99 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALL_H_ @@ -720,6 +720,15 @@ /* syscall: "fallocate" ret: "int" args: "int" "int" "off_t" "off_t" */ #define LINUX_SYS_fallocate 480 +/* syscall: "timerfd_create" ret: "int" args: "clockid_t" "int" */ +#define LINUX_SYS_timerfd_create 481 + +/* syscall: "timerfd_settime" ret: "int" args: "int" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_settime 482 + +/* syscall: "timerfd_gettime" ret: "int" args: "int" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_gettime 483 + /* syscall: "dup3" ret: "int" args: "int" "int" "int" */ #define LINUX_SYS_dup3 487 diff --git a/sys/compat/linux/arch/alpha/linux_syscallargs.h b/sys/compat/linux/arch/alpha/linux_syscallargs.h index ba36b6513b1..5228cf3fc22 100644 --- a/sys/compat/linux/arch/alpha/linux_syscallargs.h +++ b/sys/compat/linux/arch/alpha/linux_syscallargs.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscallargs.h,v 1.110 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscallargs.h,v 1.111 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.99 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALLARGS_H_ @@ -1150,6 +1150,26 @@ struct linux_sys_fallocate_args { }; check_syscall_args(linux_sys_fallocate) +struct linux_sys_timerfd_create_args { + syscallarg(clockid_t) clock_id; + syscallarg(int) flags; +}; +check_syscall_args(linux_sys_timerfd_create) + +struct linux_sys_timerfd_settime_args { + syscallarg(int) fd; + syscallarg(int) flags; + syscallarg(const struct linux_itimerspec *) tim; + syscallarg(struct linux_itimerspec *) otim; +}; +check_syscall_args(linux_sys_timerfd_settime) + +struct linux_sys_timerfd_gettime_args { + syscallarg(int) fd; + syscallarg(struct linux_itimerspec *) tim; +}; +check_syscall_args(linux_sys_timerfd_gettime) + struct linux_sys_dup3_args { syscallarg(int) from; syscallarg(int) to; @@ -1659,6 +1679,12 @@ int linux_sys_recvmmsg(struct lwp *, const struct linux_sys_recvmmsg_args *, reg int linux_sys_fallocate(struct lwp *, const struct linux_sys_fallocate_args *, register_t *); +int linux_sys_timerfd_create(struct lwp *, const struct linux_sys_timerfd_create_args *, register_t *); + +int linux_sys_timerfd_settime(struct lwp *, const struct linux_sys_timerfd_settime_args *, register_t *); + +int linux_sys_timerfd_gettime(struct lwp *, const struct linux_sys_timerfd_gettime_args *, register_t *); + int linux_sys_dup3(struct lwp *, const struct linux_sys_dup3_args *, register_t *); int linux_sys_pipe2(struct lwp *, const struct linux_sys_pipe2_args *, register_t *); diff --git a/sys/compat/linux/arch/alpha/linux_syscalls.c b/sys/compat/linux/arch/alpha/linux_syscalls.c index 04788b74227..1135be7e47c 100644 --- a/sys/compat/linux/arch/alpha/linux_syscalls.c +++ b/sys/compat/linux/arch/alpha/linux_syscalls.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_syscalls.c,v 1.112 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscalls.c,v 1.113 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.99 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.112 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.113 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #if defined(_KERNEL_OPT) @@ -540,9 +540,9 @@ const char *const linux_syscallnames[] = { /* 478 */ "#478 (unimplemented eventfd)", /* 479 */ "recvmmsg", /* 480 */ "fallocate", - /* 481 */ "#481 (unimplemented timerfd_create)", - /* 482 */ "#482 (unimplemented timerfd_settime)", - /* 483 */ "#483 (unimplemented timerfd_gettime)", + /* 481 */ "timerfd_create", + /* 482 */ "timerfd_settime", + /* 483 */ "timerfd_gettime", /* 484 */ "#484 (unimplemented signalfd4)", /* 485 */ "#485 (unimplemented eventfd2)", /* 486 */ "#486 (unimplemented epoll_create1)", @@ -1081,9 +1081,9 @@ const char *const altlinux_syscallnames[] = { /* 478 */ NULL, /* unimplemented eventfd */ /* 479 */ NULL, /* recvmmsg */ /* 480 */ NULL, /* fallocate */ - /* 481 */ NULL, /* unimplemented timerfd_create */ - /* 482 */ NULL, /* unimplemented timerfd_settime */ - /* 483 */ NULL, /* unimplemented timerfd_gettime */ + /* 481 */ NULL, /* timerfd_create */ + /* 482 */ NULL, /* timerfd_settime */ + /* 483 */ NULL, /* timerfd_gettime */ /* 484 */ NULL, /* unimplemented signalfd4 */ /* 485 */ NULL, /* unimplemented eventfd2 */ /* 486 */ NULL, /* unimplemented epoll_create1 */ diff --git a/sys/compat/linux/arch/alpha/linux_sysent.c b/sys/compat/linux/arch/alpha/linux_sysent.c index 7ef54c68efe..7f67a111343 100644 --- a/sys/compat/linux/arch/alpha/linux_sysent.c +++ b/sys/compat/linux/arch/alpha/linux_sysent.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_sysent.c,v 1.111 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_sysent.c,v 1.112 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.98 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.99 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.111 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.112 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #include "opt_sysv.h" @@ -1917,14 +1917,19 @@ struct sysent linux_sysent[] = { .sy_call = (sy_call_t *)linux_sys_fallocate }, /* 480 = fallocate */ { - .sy_call = linux_sys_nosys, - }, /* 481 = filler */ + ns(struct linux_sys_timerfd_create_args), + .sy_call = (sy_call_t *)linux_sys_timerfd_create + }, /* 481 = timerfd_create */ { - .sy_call = linux_sys_nosys, - }, /* 482 = filler */ + ns(struct linux_sys_timerfd_settime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_settime + }, /* 482 = timerfd_settime */ { - .sy_call = linux_sys_nosys, - }, /* 483 = filler */ + ns(struct linux_sys_timerfd_gettime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_gettime + }, /* 483 = timerfd_gettime */ { .sy_call = linux_sys_nosys, }, /* 484 = filler */ diff --git a/sys/compat/linux/arch/amd64/linux_syscall.h b/sys/compat/linux/arch/amd64/linux_syscall.h index 6e886089d7b..0bf25510df7 100644 --- a/sys/compat/linux/arch/amd64/linux_syscall.h +++ b/sys/compat/linux/arch/amd64/linux_syscall.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscall.h,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscall.h,v 1.73 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.64 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALL_H_ @@ -660,9 +660,18 @@ /* syscall: "utimensat" ret: "int" args: "int" "const char *" "struct linux_timespec *" "int" */ #define LINUX_SYS_utimensat 280 +/* syscall: "timerfd_create" ret: "int" args: "clockid_t" "int" */ +#define LINUX_SYS_timerfd_create 283 + /* syscall: "fallocate" ret: "int" args: "int" "int" "off_t" "off_t" */ #define LINUX_SYS_fallocate 285 +/* syscall: "timerfd_settime" ret: "int" args: "int" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_settime 286 + +/* syscall: "timerfd_gettime" ret: "int" args: "int" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_gettime 287 + /* syscall: "accept4" ret: "int" args: "int" "struct osockaddr *" "int *" "int" */ #define LINUX_SYS_accept4 288 diff --git a/sys/compat/linux/arch/amd64/linux_syscallargs.h b/sys/compat/linux/arch/amd64/linux_syscallargs.h index 76594000645..01662e80a14 100644 --- a/sys/compat/linux/arch/amd64/linux_syscallargs.h +++ b/sys/compat/linux/arch/amd64/linux_syscallargs.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscallargs.h,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscallargs.h,v 1.73 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.64 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALLARGS_H_ @@ -1023,6 +1023,12 @@ struct linux_sys_utimensat_args { }; check_syscall_args(linux_sys_utimensat) +struct linux_sys_timerfd_create_args { + syscallarg(clockid_t) clock_id; + syscallarg(int) flags; +}; +check_syscall_args(linux_sys_timerfd_create) + struct linux_sys_fallocate_args { syscallarg(int) fd; syscallarg(int) mode; @@ -1031,6 +1037,20 @@ struct linux_sys_fallocate_args { }; check_syscall_args(linux_sys_fallocate) +struct linux_sys_timerfd_settime_args { + syscallarg(int) fd; + syscallarg(int) flags; + syscallarg(const struct linux_itimerspec *) tim; + syscallarg(struct linux_itimerspec *) otim; +}; +check_syscall_args(linux_sys_timerfd_settime) + +struct linux_sys_timerfd_gettime_args { + syscallarg(int) fd; + syscallarg(struct linux_itimerspec *) tim; +}; +check_syscall_args(linux_sys_timerfd_gettime) + struct linux_sys_accept4_args { syscallarg(int) s; syscallarg(struct osockaddr *) name; @@ -1510,8 +1530,14 @@ int sys___futex_get_robust_list(struct lwp *, const struct sys___futex_get_robus int linux_sys_utimensat(struct lwp *, const struct linux_sys_utimensat_args *, register_t *); +int linux_sys_timerfd_create(struct lwp *, const struct linux_sys_timerfd_create_args *, register_t *); + int linux_sys_fallocate(struct lwp *, const struct linux_sys_fallocate_args *, register_t *); +int linux_sys_timerfd_settime(struct lwp *, const struct linux_sys_timerfd_settime_args *, register_t *); + +int linux_sys_timerfd_gettime(struct lwp *, const struct linux_sys_timerfd_gettime_args *, register_t *); + int linux_sys_accept4(struct lwp *, const struct linux_sys_accept4_args *, register_t *); int linux_sys_dup3(struct lwp *, const struct linux_sys_dup3_args *, register_t *); diff --git a/sys/compat/linux/arch/amd64/linux_syscalls.c b/sys/compat/linux/arch/amd64/linux_syscalls.c index 81d0125af3c..a48054e893e 100644 --- a/sys/compat/linux/arch/amd64/linux_syscalls.c +++ b/sys/compat/linux/arch/amd64/linux_syscalls.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_syscalls.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscalls.c,v 1.73 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.64 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.73 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #if defined(_KERNEL_OPT) @@ -349,11 +349,11 @@ const char *const linux_syscallnames[] = { /* 280 */ "utimensat", /* 281 */ "#281 (unimplemented epoll_pwait)", /* 282 */ "#282 (unimplemented signalfd)", - /* 283 */ "#283 (unimplemented timerfd_create)", + /* 283 */ "timerfd_create", /* 284 */ "#284 (unimplemented eventfd)", /* 285 */ "fallocate", - /* 286 */ "#286 (unimplemented timerfd_settime)", - /* 287 */ "#287 (unimplemented timerfd_gettime)", + /* 286 */ "timerfd_settime", + /* 287 */ "timerfd_gettime", /* 288 */ "accept4", /* 289 */ "#289 (unimplemented signalfd4)", /* 290 */ "#290 (unimplemented eventfd2)", @@ -893,11 +893,11 @@ const char *const altlinux_syscallnames[] = { /* 280 */ NULL, /* utimensat */ /* 281 */ NULL, /* unimplemented epoll_pwait */ /* 282 */ NULL, /* unimplemented signalfd */ - /* 283 */ NULL, /* unimplemented timerfd_create */ + /* 283 */ NULL, /* timerfd_create */ /* 284 */ NULL, /* unimplemented eventfd */ /* 285 */ NULL, /* fallocate */ - /* 286 */ NULL, /* unimplemented timerfd_settime */ - /* 287 */ NULL, /* unimplemented timerfd_gettime */ + /* 286 */ NULL, /* timerfd_settime */ + /* 287 */ NULL, /* timerfd_gettime */ /* 288 */ NULL, /* accept4 */ /* 289 */ NULL, /* unimplemented signalfd4 */ /* 290 */ NULL, /* unimplemented eventfd2 */ diff --git a/sys/compat/linux/arch/amd64/linux_sysent.c b/sys/compat/linux/arch/amd64/linux_sysent.c index a1fa085dfc0..3a3e1fd3830 100644 --- a/sys/compat/linux/arch/amd64/linux_sysent.c +++ b/sys/compat/linux/arch/amd64/linux_sysent.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_sysent.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_sysent.c,v 1.73 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.63 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.64 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.72 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.73 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #include "opt_sysv.h" @@ -1281,8 +1281,9 @@ struct sysent linux_sysent[] = { .sy_call = linux_sys_nosys, }, /* 282 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 283 = filler */ + ns(struct linux_sys_timerfd_create_args), + .sy_call = (sy_call_t *)linux_sys_timerfd_create + }, /* 283 = timerfd_create */ { .sy_call = linux_sys_nosys, }, /* 284 = filler */ @@ -1292,11 +1293,15 @@ struct sysent linux_sysent[] = { .sy_call = (sy_call_t *)linux_sys_fallocate }, /* 285 = fallocate */ { - .sy_call = linux_sys_nosys, - }, /* 286 = filler */ + ns(struct linux_sys_timerfd_settime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_settime + }, /* 286 = timerfd_settime */ { - .sy_call = linux_sys_nosys, - }, /* 287 = filler */ + ns(struct linux_sys_timerfd_gettime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_gettime + }, /* 287 = timerfd_gettime */ { ns(struct linux_sys_accept4_args), .sy_flags = SYCALL_ARG_PTR, diff --git a/sys/compat/linux/arch/amd64/linux_systrace_args.c b/sys/compat/linux/arch/amd64/linux_systrace_args.c index 94ef0362d99..89f39fb4d9e 100644 --- a/sys/compat/linux/arch/amd64/linux_systrace_args.c +++ b/sys/compat/linux/arch/amd64/linux_systrace_args.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_systrace_args.c,v 1.16 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_systrace_args.c,v 1.17 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument to DTrace register array conversion. @@ -1784,6 +1784,14 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 4; break; } + /* linux_sys_timerfd_create */ + case 283: { + const struct linux_sys_timerfd_create_args *p = params; + iarg[0] = SCARG(p, clock_id); /* clockid_t */ + iarg[1] = SCARG(p, flags); /* int */ + *n_args = 2; + break; + } /* linux_sys_fallocate */ case 285: { const struct linux_sys_fallocate_args *p = params; @@ -1794,6 +1802,24 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 4; break; } + /* linux_sys_timerfd_settime */ + case 286: { + const struct linux_sys_timerfd_settime_args *p = params; + iarg[0] = SCARG(p, fd); /* int */ + 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_timerfd_gettime */ + case 287: { + const struct linux_sys_timerfd_gettime_args *p = params; + iarg[0] = SCARG(p, fd); /* int */ + uarg[1] = (intptr_t) SCARG(p, tim); /* struct linux_itimerspec * */ + *n_args = 2; + break; + } /* linux_sys_accept4 */ case 288: { const struct linux_sys_accept4_args *p = params; @@ -4806,6 +4832,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux_sys_timerfd_create */ + case 283: + switch(ndx) { + case 0: + p = "clockid_t"; + break; + case 1: + p = "int"; + break; + default: + break; + }; + break; /* linux_sys_fallocate */ case 285: switch(ndx) { @@ -4825,6 +4864,38 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux_sys_timerfd_settime */ + case 286: + switch(ndx) { + case 0: + p = "int"; + 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_timerfd_gettime */ + case 287: + switch(ndx) { + case 0: + p = "int"; + break; + case 1: + p = "struct linux_itimerspec *"; + break; + default: + break; + }; + break; /* linux_sys_accept4 */ case 288: switch(ndx) { @@ -5950,11 +6021,26 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux_sys_timerfd_create */ + case 283: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_sys_fallocate */ case 285: if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux_sys_timerfd_settime */ + case 286: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sys_timerfd_gettime */ + case 287: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_sys_accept4 */ case 288: if (ndx == 0 || ndx == 1) diff --git a/sys/compat/linux/arch/arm/linux_syscall.h b/sys/compat/linux/arch/arm/linux_syscall.h index 7ae2f043962..5ff1e7c5600 100644 --- a/sys/compat/linux/arch/arm/linux_syscall.h +++ b/sys/compat/linux/arch/arm/linux_syscall.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscall.h,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscall.h,v 1.84 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.71 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALL_H_ @@ -718,9 +718,18 @@ /* syscall: "utimensat" ret: "int" args: "int" "const char *" "struct linux_timespec *" "int" */ #define LINUX_SYS_utimensat 348 +/* syscall: "timerfd_create" ret: "int" args: "clockid_t" "int" */ +#define LINUX_SYS_timerfd_create 350 + /* syscall: "fallocate" ret: "int" args: "int" "int" "off_t" "off_t" */ #define LINUX_SYS_fallocate 352 +/* syscall: "timerfd_settime" ret: "int" args: "int" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_settime 353 + +/* syscall: "timerfd_gettime" ret: "int" args: "int" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_gettime 354 + /* syscall: "dup3" ret: "int" args: "int" "int" "int" */ #define LINUX_SYS_dup3 358 diff --git a/sys/compat/linux/arch/arm/linux_syscallargs.h b/sys/compat/linux/arch/arm/linux_syscallargs.h index ddd7754e6a1..761f16bed1e 100644 --- a/sys/compat/linux/arch/arm/linux_syscallargs.h +++ b/sys/compat/linux/arch/arm/linux_syscallargs.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscallargs.h,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscallargs.h,v 1.84 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.71 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALLARGS_H_ @@ -1097,6 +1097,12 @@ struct linux_sys_utimensat_args { }; check_syscall_args(linux_sys_utimensat) +struct linux_sys_timerfd_create_args { + syscallarg(clockid_t) clock_id; + syscallarg(int) flags; +}; +check_syscall_args(linux_sys_timerfd_create) + struct linux_sys_fallocate_args { syscallarg(int) fd; syscallarg(int) mode; @@ -1105,6 +1111,20 @@ struct linux_sys_fallocate_args { }; check_syscall_args(linux_sys_fallocate) +struct linux_sys_timerfd_settime_args { + syscallarg(int) fd; + syscallarg(int) flags; + syscallarg(const struct linux_itimerspec *) tim; + syscallarg(struct linux_itimerspec *) otim; +}; +check_syscall_args(linux_sys_timerfd_settime) + +struct linux_sys_timerfd_gettime_args { + syscallarg(int) fd; + syscallarg(struct linux_itimerspec *) tim; +}; +check_syscall_args(linux_sys_timerfd_gettime) + struct linux_sys_dup3_args { syscallarg(int) from; syscallarg(int) to; @@ -1607,8 +1627,14 @@ int sys___futex_get_robust_list(struct lwp *, const struct sys___futex_get_robus int linux_sys_utimensat(struct lwp *, const struct linux_sys_utimensat_args *, register_t *); +int linux_sys_timerfd_create(struct lwp *, const struct linux_sys_timerfd_create_args *, register_t *); + int linux_sys_fallocate(struct lwp *, const struct linux_sys_fallocate_args *, register_t *); +int linux_sys_timerfd_settime(struct lwp *, const struct linux_sys_timerfd_settime_args *, register_t *); + +int linux_sys_timerfd_gettime(struct lwp *, const struct linux_sys_timerfd_gettime_args *, register_t *); + int linux_sys_dup3(struct lwp *, const struct linux_sys_dup3_args *, register_t *); int linux_sys_pipe2(struct lwp *, const struct linux_sys_pipe2_args *, register_t *); diff --git a/sys/compat/linux/arch/arm/linux_syscalls.c b/sys/compat/linux/arch/arm/linux_syscalls.c index 990c1e743dc..e6decb0f423 100644 --- a/sys/compat/linux/arch/arm/linux_syscalls.c +++ b/sys/compat/linux/arch/arm/linux_syscalls.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_syscalls.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscalls.c,v 1.84 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.71 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.84 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #include <sys/param.h> @@ -385,11 +385,11 @@ const char *const linux_syscallnames[] = { /* 347 */ "#347 (unimplemented kexec_load)", /* 348 */ "utimensat", /* 349 */ "#349 (unimplemented signalfd)", - /* 350 */ "#350 (unimplemented timerfd_create)", + /* 350 */ "timerfd_create", /* 351 */ "#351 (unimplemented eventfd)", /* 352 */ "fallocate", - /* 353 */ "#353 (unimplemented timerfd_settime)", - /* 354 */ "#354 (unimplemented timerfd_gettime)", + /* 353 */ "timerfd_settime", + /* 354 */ "timerfd_gettime", /* 355 */ "#355 (unimplemented signalfd4)", /* 356 */ "#356 (unimplemented eventfd2)", /* 357 */ "#357 (unimplemented epoll_create1)", @@ -907,11 +907,11 @@ const char *const altlinux_syscallnames[] = { /* 347 */ NULL, /* unimplemented kexec_load */ /* 348 */ NULL, /* utimensat */ /* 349 */ NULL, /* unimplemented signalfd */ - /* 350 */ NULL, /* unimplemented timerfd_create */ + /* 350 */ NULL, /* timerfd_create */ /* 351 */ NULL, /* unimplemented eventfd */ /* 352 */ NULL, /* fallocate */ - /* 353 */ NULL, /* unimplemented timerfd_settime */ - /* 354 */ NULL, /* unimplemented timerfd_gettime */ + /* 353 */ NULL, /* timerfd_settime */ + /* 354 */ NULL, /* timerfd_gettime */ /* 355 */ NULL, /* unimplemented signalfd4 */ /* 356 */ NULL, /* unimplemented eventfd2 */ /* 357 */ NULL, /* unimplemented epoll_create1 */ diff --git a/sys/compat/linux/arch/arm/linux_sysent.c b/sys/compat/linux/arch/arm/linux_sysent.c index 6e6200e40e5..ac582feb324 100644 --- a/sys/compat/linux/arch/arm/linux_sysent.c +++ b/sys/compat/linux/arch/arm/linux_sysent.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_sysent.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_sysent.c,v 1.84 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:01:49 thorpej Exp + * created from NetBSD: syscalls.master,v 1.71 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.83 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.84 2021/09/19 23:52:07 thorpej Exp $"); #include <sys/param.h> #include <sys/poll.h> @@ -1454,8 +1454,9 @@ struct sysent linux_sysent[] = { .sy_call = linux_sys_nosys, }, /* 349 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 350 = filler */ + ns(struct linux_sys_timerfd_create_args), + .sy_call = (sy_call_t *)linux_sys_timerfd_create + }, /* 350 = timerfd_create */ { .sy_call = linux_sys_nosys, }, /* 351 = filler */ @@ -1465,11 +1466,15 @@ struct sysent linux_sysent[] = { .sy_call = (sy_call_t *)linux_sys_fallocate }, /* 352 = fallocate */ { - .sy_call = linux_sys_nosys, - }, /* 353 = filler */ + ns(struct linux_sys_timerfd_settime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_settime + }, /* 353 = timerfd_settime */ { - .sy_call = linux_sys_nosys, - }, /* 354 = filler */ + ns(struct linux_sys_timerfd_gettime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_gettime + }, /* 354 = timerfd_gettime */ { .sy_call = linux_sys_nosys, }, /* 355 = filler */ diff --git a/sys/compat/linux/arch/arm/linux_systrace_args.c b/sys/compat/linux/arch/arm/linux_systrace_args.c index 351bd8b45f1..00ec40a8d09 100644 --- a/sys/compat/linux/arch/arm/linux_systrace_args.c +++ b/sys/compat/linux/arch/arm/linux_systrace_args.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_systrace_args.c,v 1.16 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_systrace_args.c,v 1.17 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument to DTrace register array conversion. @@ -1883,6 +1883,14 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 4; break; } + /* linux_sys_timerfd_create */ + case 350: { + const struct linux_sys_timerfd_create_args *p = params; + iarg[0] = SCARG(p, clock_id); /* clockid_t */ + iarg[1] = SCARG(p, flags); /* int */ + *n_args = 2; + break; + } /* linux_sys_fallocate */ case 352: { const struct linux_sys_fallocate_args *p = params; @@ -1893,6 +1901,24 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 4; break; } + /* linux_sys_timerfd_settime */ + case 353: { + const struct linux_sys_timerfd_settime_args *p = params; + iarg[0] = SCARG(p, fd); /* int */ + 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_timerfd_gettime */ + case 354: { + const struct linux_sys_timerfd_gettime_args *p = params; + iarg[0] = SCARG(p, fd); /* int */ + uarg[1] = (intptr_t) SCARG(p, tim); /* struct linux_itimerspec * */ + *n_args = 2; + break; + } /* linux_sys_dup3 */ case 358: { const struct linux_sys_dup3_args *p = params; @@ -5026,6 +5052,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux_sys_timerfd_create */ + case 350: + switch(ndx) { + case 0: + p = "clockid_t"; + break; + case 1: + p = "int"; + break; + default: + break; + }; + break; /* linux_sys_fallocate */ case 352: switch(ndx) { @@ -5045,6 +5084,38 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux_sys_timerfd_settime */ + case 353: + switch(ndx) { + case 0: + p = "int"; + 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_timerfd_gettime */ + case 354: + switch(ndx) { + case 0: + p = "int"; + break; + case 1: + p = "struct linux_itimerspec *"; + break; + default: + break; + }; + break; /* linux_sys_dup3 */ case 358: switch(ndx) { @@ -6265,11 +6336,26 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux_sys_timerfd_create */ + case 350: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_sys_fallocate */ case 352: if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux_sys_timerfd_settime */ + case 353: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sys_timerfd_gettime */ + case 354: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_sys_dup3 */ case 358: if (ndx == 0 || ndx == 1) diff --git a/sys/compat/linux/arch/i386/linux_syscall.h b/sys/compat/linux/arch/i386/linux_syscall.h index 63a3b8e1f35..591c020a17f 100644 --- a/sys/compat/linux/arch/i386/linux_syscall.h +++ b/sys/compat/linux/arch/i386/linux_syscall.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscall.h,v 1.117 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscall.h,v 1.118 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.126 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALL_H_ @@ -740,9 +740,18 @@ /* syscall: "utimensat" ret: "int" args: "int" "const char *" "struct linux_timespec *" "int" */ #define LINUX_SYS_utimensat 320 +/* syscall: "timerfd_create" ret: "int" args: "clockid_t" "int" */ +#define LINUX_SYS_timerfd_create 322 + /* syscall: "fallocate" ret: "int" args: "int" "int" "off_t" "off_t" */ #define LINUX_SYS_fallocate 324 +/* syscall: "timerfd_settime" ret: "int" args: "int" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_settime 325 + +/* syscall: "timerfd_gettime" ret: "int" args: "int" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_gettime 326 + /* syscall: "dup3" ret: "int" args: "int" "int" "int" */ #define LINUX_SYS_dup3 330 diff --git a/sys/compat/linux/arch/i386/linux_syscallargs.h b/sys/compat/linux/arch/i386/linux_syscallargs.h index d090bec48ac..b13f712bac3 100644 --- a/sys/compat/linux/arch/i386/linux_syscallargs.h +++ b/sys/compat/linux/arch/i386/linux_syscallargs.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscallargs.h,v 1.117 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscallargs.h,v 1.118 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.126 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALLARGS_H_ @@ -1144,6 +1144,12 @@ struct linux_sys_utimensat_args { }; check_syscall_args(linux_sys_utimensat) +struct linux_sys_timerfd_create_args { + syscallarg(clockid_t) clock_id; + syscallarg(int) flags; +}; +check_syscall_args(linux_sys_timerfd_create) + struct linux_sys_fallocate_args { syscallarg(int) fd; syscallarg(int) mode; @@ -1152,6 +1158,20 @@ struct linux_sys_fallocate_args { }; check_syscall_args(linux_sys_fallocate) +struct linux_sys_timerfd_settime_args { + syscallarg(int) fd; + syscallarg(int) flags; + syscallarg(const struct linux_itimerspec *) tim; + syscallarg(struct linux_itimerspec *) otim; +}; +check_syscall_args(linux_sys_timerfd_settime) + +struct linux_sys_timerfd_gettime_args { + syscallarg(int) fd; + syscallarg(struct linux_itimerspec *) tim; +}; +check_syscall_args(linux_sys_timerfd_gettime) + struct linux_sys_dup3_args { syscallarg(int) from; syscallarg(int) to; @@ -1633,8 +1653,14 @@ int sys___futex_get_robust_list(struct lwp *, const struct sys___futex_get_robus int linux_sys_utimensat(struct lwp *, const struct linux_sys_utimensat_args *, register_t *); +int linux_sys_timerfd_create(struct lwp *, const struct linux_sys_timerfd_create_args *, register_t *); + int linux_sys_fallocate(struct lwp *, const struct linux_sys_fallocate_args *, register_t *); +int linux_sys_timerfd_settime(struct lwp *, const struct linux_sys_timerfd_settime_args *, register_t *); + +int linux_sys_timerfd_gettime(struct lwp *, const struct linux_sys_timerfd_gettime_args *, register_t *); + int linux_sys_dup3(struct lwp *, const struct linux_sys_dup3_args *, register_t *); int linux_sys_pipe2(struct lwp *, const struct linux_sys_pipe2_args *, register_t *); diff --git a/sys/compat/linux/arch/i386/linux_syscalls.c b/sys/compat/linux/arch/i386/linux_syscalls.c index 9279f7aa991..775c90a3855 100644 --- a/sys/compat/linux/arch/i386/linux_syscalls.c +++ b/sys/compat/linux/arch/i386/linux_syscalls.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_syscalls.c,v 1.118 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscalls.c,v 1.119 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.126 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.118 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.119 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #include <sys/param.h> @@ -356,11 +356,11 @@ const char *const linux_syscallnames[] = { /* 319 */ "#319 (unimplemented epoll_wait)", /* 320 */ "utimensat", /* 321 */ "#321 (unimplemented signalfd)", - /* 322 */ "#322 (unimplemented timerfd_create)", + /* 322 */ "timerfd_create", /* 323 */ "#323 (unimplemented eventfd)", /* 324 */ "fallocate", - /* 325 */ "#325 (unimplemented timerfd_settime)", - /* 326 */ "#326 (unimplemented timerfd_gettime)", + /* 325 */ "timerfd_settime", + /* 326 */ "timerfd_gettime", /* 327 */ "#327 (unimplemented signalfd4)", /* 328 */ "#328 (unimplemented eventfd2)", /* 329 */ "#329 (unimplemented epoll_create1)", @@ -878,11 +878,11 @@ const char *const altlinux_syscallnames[] = { /* 319 */ NULL, /* unimplemented epoll_wait */ /* 320 */ NULL, /* utimensat */ /* 321 */ NULL, /* unimplemented signalfd */ - /* 322 */ NULL, /* unimplemented timerfd_create */ + /* 322 */ NULL, /* timerfd_create */ /* 323 */ NULL, /* unimplemented eventfd */ /* 324 */ NULL, /* fallocate */ - /* 325 */ NULL, /* unimplemented timerfd_settime */ - /* 326 */ NULL, /* unimplemented timerfd_gettime */ + /* 325 */ NULL, /* timerfd_settime */ + /* 326 */ NULL, /* timerfd_gettime */ /* 327 */ NULL, /* unimplemented signalfd4 */ /* 328 */ NULL, /* unimplemented eventfd2 */ /* 329 */ NULL, /* unimplemented epoll_create1 */ diff --git a/sys/compat/linux/arch/i386/linux_sysent.c b/sys/compat/linux/arch/i386/linux_sysent.c index c7c695efb30..e4fc7b63b91 100644 --- a/sys/compat/linux/arch/i386/linux_sysent.c +++ b/sys/compat/linux/arch/i386/linux_sysent.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_sysent.c,v 1.117 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_sysent.c,v 1.118 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.126 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.117 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.118 2021/09/19 23:52:07 thorpej Exp $"); #include <sys/param.h> #include <sys/poll.h> @@ -1383,8 +1383,9 @@ struct sysent linux_sysent[] = { .sy_call = linux_sys_nosys, }, /* 321 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 322 = filler */ + ns(struct linux_sys_timerfd_create_args), + .sy_call = (sy_call_t *)linux_sys_timerfd_create + }, /* 322 = timerfd_create */ { .sy_call = linux_sys_nosys, }, /* 323 = filler */ @@ -1394,11 +1395,15 @@ struct sysent linux_sysent[] = { .sy_call = (sy_call_t *)linux_sys_fallocate }, /* 324 = fallocate */ { - .sy_call = linux_sys_nosys, - }, /* 325 = filler */ + ns(struct linux_sys_timerfd_settime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_settime + }, /* 325 = timerfd_settime */ { - .sy_call = linux_sys_nosys, - }, /* 326 = filler */ + ns(struct linux_sys_timerfd_gettime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_gettime + }, /* 326 = timerfd_gettime */ { .sy_call = linux_sys_nosys, }, /* 327 = filler */ diff --git a/sys/compat/linux/arch/i386/linux_systrace_args.c b/sys/compat/linux/arch/i386/linux_systrace_args.c index 2780f90a6d8..ab18ba60a35 100644 --- a/sys/compat/linux/arch/i386/linux_systrace_args.c +++ b/sys/compat/linux/arch/i386/linux_systrace_args.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux_systrace_args.c,v 1.12 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_systrace_args.c,v 1.13 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument to DTrace register array conversion. @@ -1946,6 +1946,14 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 4; break; } + /* linux_sys_timerfd_create */ + case 322: { + const struct linux_sys_timerfd_create_args *p = params; + iarg[0] = SCARG(p, clock_id); /* clockid_t */ + iarg[1] = SCARG(p, flags); /* int */ + *n_args = 2; + break; + } /* linux_sys_fallocate */ case 324: { const struct linux_sys_fallocate_args *p = params; @@ -1956,6 +1964,24 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 4; break; } + /* linux_sys_timerfd_settime */ + case 325: { + const struct linux_sys_timerfd_settime_args *p = params; + iarg[0] = SCARG(p, fd); /* int */ + 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_timerfd_gettime */ + case 326: { + const struct linux_sys_timerfd_gettime_args *p = params; + iarg[0] = SCARG(p, fd); /* int */ + uarg[1] = (intptr_t) SCARG(p, tim); /* struct linux_itimerspec * */ + *n_args = 2; + break; + } /* linux_sys_dup3 */ case 330: { const struct linux_sys_dup3_args *p = params; @@ -5138,6 +5164,19 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux_sys_timerfd_create */ + case 322: + switch(ndx) { + case 0: + p = "clockid_t"; + break; + case 1: + p = "int"; + break; + default: + break; + }; + break; /* linux_sys_fallocate */ case 324: switch(ndx) { @@ -5157,6 +5196,38 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux_sys_timerfd_settime */ + case 325: + switch(ndx) { + case 0: + p = "int"; + 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_timerfd_gettime */ + case 326: + switch(ndx) { + case 0: + p = "int"; + break; + case 1: + p = "struct linux_itimerspec *"; + break; + default: + break; + }; + break; /* linux_sys_dup3 */ case 330: switch(ndx) { @@ -6328,11 +6399,26 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux_sys_timerfd_create */ + case 322: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_sys_fallocate */ case 324: if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux_sys_timerfd_settime */ + case 325: + if (ndx == 0 || ndx == 1) + p = "int"; + break; + /* linux_sys_timerfd_gettime */ + case 326: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* linux_sys_dup3 */ case 330: if (ndx == 0 || ndx == 1) diff --git a/sys/compat/linux/arch/m68k/linux_syscall.h b/sys/compat/linux/arch/m68k/linux_syscall.h index c766c47ee0f..443462e21f9 100644 --- a/sys/compat/linux/arch/m68k/linux_syscall.h +++ b/sys/compat/linux/arch/m68k/linux_syscall.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscall.h,v 1.109 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscall.h,v 1.110 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.97 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALL_H_ @@ -729,9 +729,18 @@ /* syscall: "utimensat" ret: "int" args: "int" "const char *" "struct linux_timespec *" "int" */ #define LINUX_SYS_utimensat 316 +/* syscall: "timerfd_create" ret: "int" args: "clockid_t" "int" */ +#define LINUX_SYS_timerfd_create 318 + /* syscall: "fallocate" ret: "int" args: "int" "int" "off_t" "off_t" */ #define LINUX_SYS_fallocate 320 +/* syscall: "timerfd_settime" ret: "int" args: "int" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_settime 321 + +/* syscall: "timerfd_gettime" ret: "int" args: "int" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_gettime 322 + /* syscall: "dup3" ret: "int" args: "int" "int" "int" */ #define LINUX_SYS_dup3 326 diff --git a/sys/compat/linux/arch/m68k/linux_syscallargs.h b/sys/compat/linux/arch/m68k/linux_syscallargs.h index 64e98b3e42a..1fe08043008 100644 --- a/sys/compat/linux/arch/m68k/linux_syscallargs.h +++ b/sys/compat/linux/arch/m68k/linux_syscallargs.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscallargs.h,v 1.108 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscallargs.h,v 1.109 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.97 2021/09/19 23:51:36 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALLARGS_H_ @@ -1105,6 +1105,12 @@ struct linux_sys_utimensat_args { }; check_syscall_args(linux_sys_utimensat) +struct linux_sys_timerfd_create_args { + syscallarg(clockid_t) clock_id; + syscallarg(int) flags; +}; +check_syscall_args(linux_sys_timerfd_create) + struct linux_sys_fallocate_args { syscallarg(int) fd; syscallarg(int) mode; @@ -1113,6 +1119,20 @@ struct linux_sys_fallocate_args { }; check_syscall_args(linux_sys_fallocate) +struct linux_sys_timerfd_settime_args { + syscallarg(int) fd; + syscallarg(int) flags; + syscallarg(const struct linux_itimerspec *) tim; + syscallarg(struct linux_itimerspec *) otim; +}; +check_syscall_args(linux_sys_timerfd_settime) + +struct linux_sys_timerfd_gettime_args { + syscallarg(int) fd; + syscallarg(struct linux_itimerspec *) tim; +}; +check_syscall_args(linux_sys_timerfd_gettime) + struct linux_sys_dup3_args { syscallarg(int) from; syscallarg(int) to; @@ -1615,8 +1635,14 @@ int linux_sys_sched_getaffinity(struct lwp *, const struct linux_sys_sched_getaf int linux_sys_utimensat(struct lwp *, const struct linux_sys_utimensat_args *, register_t *); +int linux_sys_timerfd_create(struct lwp *, const struct linux_sys_timerfd_create_args *, register_t *); + int linux_sys_fallocate(struct lwp *, const struct linux_sys_fallocate_args *, register_t *); +int linux_sys_timerfd_settime(struct lwp *, const struct linux_sys_timerfd_settime_args *, register_t *); + +int linux_sys_timerfd_gettime(struct lwp *, const struct linux_sys_timerfd_gettime_args *, register_t *); + int linux_sys_dup3(struct lwp *, const struct linux_sys_dup3_args *, register_t *); int linux_sys_pipe2(struct lwp *, const struct linux_sys_pipe2_args *, register_t *); diff --git a/sys/compat/linux/arch/m68k/linux_syscalls.c b/sys/compat/linux/arch/m68k/linux_syscalls.c index 00f15afd0a3..cd9aa9d6146 100644 --- a/sys/compat/linux/arch/m68k/linux_syscalls.c +++ b/sys/compat/linux/arch/m68k/linux_syscalls.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_syscalls.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_syscalls.c,v 1.110 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.97 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.110 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #if defined(_KERNEL_OPT) @@ -372,11 +372,11 @@ const char *const linux_syscallnames[] = { /* 315 */ "#315 (unimplemented epoll_wait)", /* 316 */ "utimensat", /* 317 */ "#317 (unimplemented signalfd)", - /* 318 */ "#318 (unimplemented timerfd_create)", + /* 318 */ "timerfd_create", /* 319 */ "#319 (unimplemented eventfd)", /* 320 */ "fallocate", - /* 321 */ "#321 (unimplemented timerfd_settime)", - /* 322 */ "#322 (unimplemented timerfd_gettime)", + /* 321 */ "timerfd_settime", + /* 322 */ "timerfd_gettime", /* 323 */ "#323 (unimplemented signalfd4)", /* 324 */ "#324 (unimplemented eventfd2)", /* 325 */ "#325 (unimplemented epoll_create1)", @@ -910,11 +910,11 @@ const char *const altlinux_syscallnames[] = { /* 315 */ NULL, /* unimplemented epoll_wait */ /* 316 */ NULL, /* utimensat */ /* 317 */ NULL, /* unimplemented signalfd */ - /* 318 */ NULL, /* unimplemented timerfd_create */ + /* 318 */ NULL, /* timerfd_create */ /* 319 */ NULL, /* unimplemented eventfd */ /* 320 */ NULL, /* fallocate */ - /* 321 */ NULL, /* unimplemented timerfd_settime */ - /* 322 */ NULL, /* unimplemented timerfd_gettime */ + /* 321 */ NULL, /* timerfd_settime */ + /* 322 */ NULL, /* timerfd_gettime */ /* 323 */ NULL, /* unimplemented signalfd4 */ /* 324 */ NULL, /* unimplemented eventfd2 */ /* 325 */ NULL, /* unimplemented epoll_create1 */ diff --git a/sys/compat/linux/arch/m68k/linux_sysent.c b/sys/compat/linux/arch/m68k/linux_sysent.c index 7326c54daae..284a0c029c0 100644 --- a/sys/compat/linux/arch/m68k/linux_sysent.c +++ b/sys/compat/linux/arch/m68k/linux_sysent.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_sysent.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $ */ +/* $NetBSD: linux_sysent.c,v 1.110 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.96 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.97 2021/09/19 23:51:36 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.109 2021/09/19 23:02:22 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.110 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #include "opt_compat_netbsd.h" @@ -1381,8 +1381,9 @@ struct sysent linux_sysent[] = { .sy_call = linux_sys_nosys, }, /* 317 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 318 = filler */ + ns(struct linux_sys_timerfd_create_args), + .sy_call = (sy_call_t *)linux_sys_timerfd_create + }, /* 318 = timerfd_create */ { .sy_call = linux_sys_nosys, }, /* 319 = filler */ @@ -1392,11 +1393,15 @@ struct sysent linux_sysent[] = { .sy_call = (sy_call_t *)linux_sys_fallocate }, /* 320 = fallocate */ { - .sy_call = linux_sys_nosys, - }, /* 321 = filler */ + ns(struct linux_sys_timerfd_settime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_settime + }, /* 321 = timerfd_settime */ { - .sy_call = linux_sys_nosys, - }, /* 322 = filler */ + ns(struct linux_sys_timerfd_gettime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_gettime + }, /* 322 = timerfd_gettime */ { .sy_call = linux_sys_nosys, }, /* 323 = filler */ diff --git a/sys/compat/linux/arch/mips/linux_syscall.h b/sys/compat/linux/arch/mips/linux_syscall.h index 4a8f575f7c9..12701c22ff9 100644 --- a/sys/compat/linux/arch/mips/linux_syscall.h +++ b/sys/compat/linux/arch/mips/linux_syscall.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscall.h,v 1.81 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_syscall.h,v 1.82 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:51:37 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALL_H_ @@ -700,6 +700,15 @@ /* syscall: "fallocate" ret: "int" args: "int" "int" "off_t" "off_t" */ #define LINUX_SYS_fallocate 320 +/* syscall: "timerfd_create" ret: "int" args: "clockid_t" "int" */ +#define LINUX_SYS_timerfd_create 321 + +/* syscall: "timerfd_gettime" ret: "int" args: "int" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_gettime 322 + +/* syscall: "timerfd_settime" ret: "int" args: "int" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_settime 323 + /* syscall: "dup3" ret: "int" args: "int" "int" "int" */ #define LINUX_SYS_dup3 327 diff --git a/sys/compat/linux/arch/mips/linux_syscallargs.h b/sys/compat/linux/arch/mips/linux_syscallargs.h index 717ff1020c7..a8fcacd4cf1 100644 --- a/sys/compat/linux/arch/mips/linux_syscallargs.h +++ b/sys/compat/linux/arch/mips/linux_syscallargs.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscallargs.h,v 1.80 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_syscallargs.h,v 1.81 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:51:37 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALLARGS_H_ @@ -1151,6 +1151,26 @@ struct linux_sys_fallocate_args { }; check_syscall_args(linux_sys_fallocate) +struct linux_sys_timerfd_create_args { + syscallarg(clockid_t) clock_id; + syscallarg(int) flags; +}; +check_syscall_args(linux_sys_timerfd_create) + +struct linux_sys_timerfd_gettime_args { + syscallarg(int) fd; + syscallarg(struct linux_itimerspec *) tim; +}; +check_syscall_args(linux_sys_timerfd_gettime) + +struct linux_sys_timerfd_settime_args { + syscallarg(int) fd; + syscallarg(int) flags; + syscallarg(const struct linux_itimerspec *) tim; + syscallarg(struct linux_itimerspec *) otim; +}; +check_syscall_args(linux_sys_timerfd_settime) + struct linux_sys_dup3_args { syscallarg(int) from; syscallarg(int) to; @@ -1649,6 +1669,12 @@ int linux_sys_utimensat(struct lwp *, const struct linux_sys_utimensat_args *, r int linux_sys_fallocate(struct lwp *, const struct linux_sys_fallocate_args *, register_t *); +int linux_sys_timerfd_create(struct lwp *, const struct linux_sys_timerfd_create_args *, register_t *); + +int linux_sys_timerfd_gettime(struct lwp *, const struct linux_sys_timerfd_gettime_args *, register_t *); + +int linux_sys_timerfd_settime(struct lwp *, const struct linux_sys_timerfd_settime_args *, register_t *); + int linux_sys_dup3(struct lwp *, const struct linux_sys_dup3_args *, register_t *); int linux_sys_pipe2(struct lwp *, const struct linux_sys_pipe2_args *, register_t *); diff --git a/sys/compat/linux/arch/mips/linux_syscalls.c b/sys/compat/linux/arch/mips/linux_syscalls.c index d0e08d2c3c5..0e9e492f1b7 100644 --- a/sys/compat/linux/arch/mips/linux_syscalls.c +++ b/sys/compat/linux/arch/mips/linux_syscalls.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_syscalls.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_syscalls.c,v 1.81 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:51:37 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.81 2021/09/19 23:52:07 thorpej Exp $"); #if defined(_KERNEL_OPT) #include <sys/param.h> @@ -351,9 +351,9 @@ const char *const linux_syscallnames[] = { /* 318 */ "#318 (unimplemented timerfd)", /* 319 */ "#319 (unimplemented eventfd)", /* 320 */ "fallocate", - /* 321 */ "#321 (unimplemented timerfd_create)", - /* 322 */ "#322 (unimplemented timerfd_gettime)", - /* 323 */ "#323 (unimplemented timerfd_settime)", + /* 321 */ "timerfd_create", + /* 322 */ "timerfd_gettime", + /* 323 */ "timerfd_settime", /* 324 */ "#324 (unimplemented signalfd4)", /* 325 */ "#325 (unimplemented eventfd2)", /* 326 */ "#326 (unimplemented epoll_create1)", @@ -868,9 +868,9 @@ const char *const altlinux_syscallnames[] = { /* 318 */ NULL, /* unimplemented timerfd */ /* 319 */ NULL, /* unimplemented eventfd */ /* 320 */ NULL, /* fallocate */ - /* 321 */ NULL, /* unimplemented timerfd_create */ - /* 322 */ NULL, /* unimplemented timerfd_gettime */ - /* 323 */ NULL, /* unimplemented timerfd_settime */ + /* 321 */ NULL, /* timerfd_create */ + /* 322 */ NULL, /* timerfd_gettime */ + /* 323 */ NULL, /* timerfd_settime */ /* 324 */ NULL, /* unimplemented signalfd4 */ /* 325 */ NULL, /* unimplemented eventfd2 */ /* 326 */ NULL, /* unimplemented epoll_create1 */ diff --git a/sys/compat/linux/arch/mips/linux_sysent.c b/sys/compat/linux/arch/mips/linux_sysent.c index e27b69f84d9..1b37f1191c0 100644 --- a/sys/compat/linux/arch/mips/linux_sysent.c +++ b/sys/compat/linux/arch/mips/linux_sysent.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_sysent.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_sysent.c,v 1.81 2021/09/19 23:52:07 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.69 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.70 2021/09/19 23:51:37 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.80 2021/09/19 23:02:23 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.81 2021/09/19 23:52:07 thorpej Exp $"); #include <sys/param.h> #include <sys/poll.h> @@ -1370,14 +1370,19 @@ struct sysent linux_sysent[] = { .sy_call = (sy_call_t *)linux_sys_fallocate }, /* 320 = fallocate */ { - .sy_call = linux_sys_nosys, - }, /* 321 = filler */ + ns(struct linux_sys_timerfd_create_args), + .sy_call = (sy_call_t *)linux_sys_timerfd_create + }, /* 321 = timerfd_create */ { - .sy_call = linux_sys_nosys, - }, /* 322 = filler */ + ns(struct linux_sys_timerfd_gettime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_gettime + }, /* 322 = timerfd_gettime */ { - .sy_call = linux_sys_nosys, - }, /* 323 = filler */ + ns(struct linux_sys_timerfd_settime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_settime + }, /* 323 = timerfd_settime */ { .sy_call = linux_sys_nosys, }, /* 324 = filler */ diff --git a/sys/compat/linux/arch/powerpc/linux_syscall.h b/sys/compat/linux/arch/powerpc/linux_syscall.h index 7c5760336a2..2b203802e38 100644 --- a/sys/compat/linux/arch/powerpc/linux_syscall.h +++ b/sys/compat/linux/arch/powerpc/linux_syscall.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscall.h,v 1.87 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_syscall.h,v 1.88 2021/09/19 23:52:08 thorpej Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.76 2021/09/19 23:51:37 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALL_H_ @@ -666,9 +666,18 @@ /* syscall: "utimensat" ret: "int" args: "int" "const char *" "struct linux_timespec *" "int" */ #define LINUX_SYS_utimensat 304 +/* syscall: "timerfd_create" ret: "int" args: "clockid_t" "int" */ +#define LINUX_SYS_timerfd_create 306 + /* syscall: "fallocate" ret: "int" args: "int" "int" "off_t" "off_t" */ #define LINUX_SYS_fallocate 309 +/* syscall: "timerfd_settime" ret: "int" args: "int" "int" "const struct linux_itimerspec *" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_settime 311 + +/* syscall: "timerfd_gettime" ret: "int" args: "int" "struct linux_itimerspec *" */ +#define LINUX_SYS_timerfd_gettime 312 + /* syscall: "dup3" ret: "int" args: "int" "int" "int" */ #define LINUX_SYS_dup3 316 diff --git a/sys/compat/linux/arch/powerpc/linux_syscallargs.h b/sys/compat/linux/arch/powerpc/linux_syscallargs.h index 8db496bc697..04c7fa3b772 100644 --- a/sys/compat/linux/arch/powerpc/linux_syscallargs.h +++ b/sys/compat/linux/arch/powerpc/linux_syscallargs.h @@ -1,10 +1,10 @@ -/* $NetBSD: linux_syscallargs.h,v 1.86 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_syscallargs.h,v 1.87 2021/09/19 23:52:08 thorpej Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.76 2021/09/19 23:51:37 thorpej Exp */ #ifndef _LINUX_SYS_SYSCALLARGS_H_ @@ -1030,6 +1030,12 @@ struct linux_sys_utimensat_args { }; check_syscall_args(linux_sys_utimensat) +struct linux_sys_timerfd_create_args { + syscallarg(clockid_t) clock_id; + syscallarg(int) flags; +}; +check_syscall_args(linux_sys_timerfd_create) + struct linux_sys_fallocate_args { syscallarg(int) fd; syscallarg(int) mode; @@ -1038,6 +1044,20 @@ struct linux_sys_fallocate_args { }; check_syscall_args(linux_sys_fallocate) +struct linux_sys_timerfd_settime_args { + syscallarg(int) fd; + syscallarg(int) flags; + syscallarg(const struct linux_itimerspec *) tim; + syscallarg(struct linux_itimerspec *) otim; +}; +check_syscall_args(linux_sys_timerfd_settime) + +struct linux_sys_timerfd_gettime_args { + syscallarg(int) fd; + syscallarg(struct linux_itimerspec *) tim; +}; +check_syscall_args(linux_sys_timerfd_gettime) + struct linux_sys_dup3_args { syscallarg(int) from; syscallarg(int) to; @@ -1510,8 +1530,14 @@ int sys___futex_get_robust_list(struct lwp *, const struct sys___futex_get_robus int linux_sys_utimensat(struct lwp *, const struct linux_sys_utimensat_args *, register_t *); +int linux_sys_timerfd_create(struct lwp *, const struct linux_sys_timerfd_create_args *, register_t *); + int linux_sys_fallocate(struct lwp *, const struct linux_sys_fallocate_args *, register_t *); +int linux_sys_timerfd_settime(struct lwp *, const struct linux_sys_timerfd_settime_args *, register_t *); + +int linux_sys_timerfd_gettime(struct lwp *, const struct linux_sys_timerfd_gettime_args *, register_t *); + int linux_sys_dup3(struct lwp *, const struct linux_sys_dup3_args *, register_t *); int linux_sys_pipe2(struct lwp *, const struct linux_sys_pipe2_args *, register_t *); diff --git a/sys/compat/linux/arch/powerpc/linux_syscalls.c b/sys/compat/linux/arch/powerpc/linux_syscalls.c index 43e70f1e71d..95b8a0bd324 100644 --- a/sys/compat/linux/arch/powerpc/linux_syscalls.c +++ b/sys/compat/linux/arch/powerpc/linux_syscalls.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_syscalls.c,v 1.86 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_syscalls.c,v 1.87 2021/09/19 23:52:08 thorpej Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.76 2021/09/19 23:51:37 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.86 2021/09/19 23:02:23 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.87 2021/09/19 23:52:08 thorpej Exp $"); #if defined(_KERNEL_OPT) #include <sys/param.h> @@ -339,13 +339,13 @@ const char *const linux_syscallnames[] = { /* 303 */ "#303 (unimplemented epoll_wait)", /* 304 */ "utimensat", /* 305 */ "#305 (unimplemented signalfd)", - /* 306 */ "#306 (unimplemented timerfd_create)", + /* 306 */ "timerfd_create", /* 307 */ "#307 (unimplemented eventfd)", /* 308 */ "#308 (unimplemented sync_file_range2)", /* 309 */ "fallocate", /* 310 */ "#310 (unimplemented subpage_prot)", - /* 311 */ "#311 (unimplemented timerfd_settime)", - /* 312 */ "#312 (unimplemented timerfd_gettime)", + /* 311 */ "timerfd_settime", + /* 312 */ "timerfd_gettime", /* 313 */ "#313 (unimplemented signalfd4)", /* 314 */ "#314 (unimplemented eventfd2)", /* 315 */ "#315 (unimplemented epoll_create1)", @@ -861,13 +861,13 @@ const char *const altlinux_syscallnames[] = { /* 303 */ NULL, /* unimplemented epoll_wait */ /* 304 */ NULL, /* utimensat */ /* 305 */ NULL, /* unimplemented signalfd */ - /* 306 */ NULL, /* unimplemented timerfd_create */ + /* 306 */ NULL, /* timerfd_create */ /* 307 */ NULL, /* unimplemented eventfd */ /* 308 */ NULL, /* unimplemented sync_file_range2 */ /* 309 */ NULL, /* fallocate */ /* 310 */ NULL, /* unimplemented subpage_prot */ - /* 311 */ NULL, /* unimplemented timerfd_settime */ - /* 312 */ NULL, /* unimplemented timerfd_gettime */ + /* 311 */ NULL, /* timerfd_settime */ + /* 312 */ NULL, /* timerfd_gettime */ /* 313 */ NULL, /* unimplemented signalfd4 */ /* 314 */ NULL, /* unimplemented eventfd2 */ /* 315 */ NULL, /* unimplemented epoll_create1 */ diff --git a/sys/compat/linux/arch/powerpc/linux_sysent.c b/sys/compat/linux/arch/powerpc/linux_sysent.c index 63ecf8e0397..d243fdab265 100644 --- a/sys/compat/linux/arch/powerpc/linux_sysent.c +++ b/sys/compat/linux/arch/powerpc/linux_sysent.c @@ -1,14 +1,14 @@ -/* $NetBSD: linux_sysent.c,v 1.87 2021/09/19 23:02:23 thorpej Exp $ */ +/* $NetBSD: linux_sysent.c,v 1.88 2021/09/19 23:52:08 thorpej Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from NetBSD: syscalls.master,v 1.75 2021/09/19 23:01:50 thorpej Exp + * created from NetBSD: syscalls.master,v 1.76 2021/09/19 23:51:37 thorpej Exp */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.87 2021/09/19 23:02:23 thorpej Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.88 2021/09/19 23:52:08 thorpej Exp $"); #include <sys/param.h> #include <sys/poll.h> @@ -1302,8 +1302,9 @@ struct sysent linux_sysent[] = { .sy_call = linux_sys_nosys, }, /* 305 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 306 = filler */ + ns(struct linux_sys_timerfd_create_args), + .sy_call = (sy_call_t *)linux_sys_timerfd_create + }, /* 306 = timerfd_create */ { .sy_call = linux_sys_nosys, }, /* 307 = filler */ @@ -1319,11 +1320,15 @@ struct sysent linux_sysent[] = { .sy_call = linux_sys_nosys, }, /* 310 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 311 = filler */ + ns(struct linux_sys_timerfd_settime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_settime + }, /* 311 = timerfd_settime */ { - .sy_call = linux_sys_nosys, - }, /* 312 = filler */ + ns(struct linux_sys_timerfd_gettime_args), + .sy_flags = SYCALL_ARG_PTR, + .sy_call = (sy_call_t *)linux_sys_timerfd_gettime + }, /* 312 = timerfd_gettime */ { .sy_call = linux_sys_nosys, }, /* 313 = filler */ |
