This commit is contained in:
ryo 2021-11-27 21:15:53 +00:00
parent 91864278e8
commit 32432d676d
10 changed files with 146 additions and 30 deletions

View File

@ -1,10 +1,10 @@
/* $NetBSD: linux32_syscall.h,v 1.1 2021/11/25 03:08:04 ryo Exp $ */
/* $NetBSD: linux32_syscall.h,v 1.2 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD
* created from NetBSD: syscalls.master,v 1.2 2021/11/27 21:15:07 ryo Exp
*/
#ifndef _LINUX32_SYS_SYSCALL_H_
@ -724,6 +724,9 @@
/* syscall: "faccessat" ret: "int" args: "int" "netbsd32_charp" "int" */
#define LINUX32_SYS_faccessat 334
/* syscall: "pselect6" ret: "int" args: "int" "netbsd32_fd_setp_t" "netbsd32_fd_setp_t" "netbsd32_fd_setp_t" "linux32_timespecp_t" "linux32_sized_sigsetp_t" */
#define LINUX32_SYS_pselect6 335
/* syscall: "ppoll" ret: "int" args: "netbsd32_pollfdp_t" "u_int" "linux32_timespecp_t" "linux32_sigsetp_t" */
#define LINUX32_SYS_ppoll 336

View File

@ -1,10 +1,10 @@
/* $NetBSD: linux32_syscallargs.h,v 1.1 2021/11/25 03:08:04 ryo Exp $ */
/* $NetBSD: linux32_syscallargs.h,v 1.2 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD
* created from NetBSD: syscalls.master,v 1.2 2021/11/27 21:15:07 ryo Exp
*/
#ifndef _LINUX32_SYS_SYSCALLARGS_H_
@ -1000,6 +1000,16 @@ struct linux32_sys_faccessat_args {
};
check_syscall_args(linux32_sys_faccessat)
struct linux32_sys_pselect6_args {
syscallarg(int) nfds;
syscallarg(netbsd32_fd_setp_t) readfds;
syscallarg(netbsd32_fd_setp_t) writefds;
syscallarg(netbsd32_fd_setp_t) exceptfds;
syscallarg(linux32_timespecp_t) timeout;
syscallarg(linux32_sized_sigsetp_t) ss;
};
check_syscall_args(linux32_sys_pselect6)
struct linux32_sys_ppoll_args {
syscallarg(netbsd32_pollfdp_t) fds;
syscallarg(u_int) nfds;
@ -1558,6 +1568,8 @@ int linux32_sys_fchmodat(struct lwp *, const struct linux32_sys_fchmodat_args *,
int linux32_sys_faccessat(struct lwp *, const struct linux32_sys_faccessat_args *, register_t *);
int linux32_sys_pselect6(struct lwp *, const struct linux32_sys_pselect6_args *, register_t *);
int linux32_sys_ppoll(struct lwp *, const struct linux32_sys_ppoll_args *, register_t *);
int netbsd32___futex_set_robust_list(struct lwp *, const struct netbsd32___futex_set_robust_list_args *, register_t *);

View File

@ -1,14 +1,14 @@
/* $NetBSD: linux32_syscalls.c,v 1.1 2021/11/25 03:08:04 ryo Exp $ */
/* $NetBSD: linux32_syscalls.c,v 1.2 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD
* created from NetBSD: syscalls.master,v 1.2 2021/11/27 21:15:07 ryo Exp
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.1 2021/11/25 03:08:04 ryo Exp $");
__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.2 2021/11/27 21:15:53 ryo Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@ -371,7 +371,7 @@ const char *const linux32_syscallnames[] = {
/* 332 */ "netbsd32_readlinkat",
/* 333 */ "fchmodat",
/* 334 */ "faccessat",
/* 335 */ "#335 (unimplemented pselect6)",
/* 335 */ "pselect6",
/* 336 */ "ppoll",
/* 337 */ "#337 (unimplemented unshare)",
/* 338 */ "netbsd32___futex_set_robust_list",
@ -890,7 +890,7 @@ const char *const altlinux32_syscallnames[] = {
/* 332 */ "readlinkat",
/* 333 */ NULL, /* fchmodat */
/* 334 */ NULL, /* faccessat */
/* 335 */ NULL, /* unimplemented pselect6 */
/* 335 */ NULL, /* pselect6 */
/* 336 */ NULL, /* ppoll */
/* 337 */ NULL, /* unimplemented unshare */
/* 338 */ "__futex_set_robust_list",

View File

@ -1,14 +1,14 @@
/* $NetBSD: linux32_sysent.c,v 1.1 2021/11/25 03:08:04 ryo Exp $ */
/* $NetBSD: linux32_sysent.c,v 1.2 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD
* created from NetBSD: syscalls.master,v 1.2 2021/11/27 21:15:07 ryo Exp
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.1 2021/11/25 03:08:04 ryo Exp $");
__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.2 2021/11/27 21:15:53 ryo Exp $");
#include <sys/param.h>
#include <sys/syscallargs.h>
@ -1259,8 +1259,9 @@ struct sysent linux32_sysent[] = {
.sy_call = (sy_call_t *)linux32_sys_faccessat
}, /* 334 = faccessat */
{
.sy_call = linux_sys_nosys,
}, /* 335 = filler */
ns(struct linux32_sys_pselect6_args),
.sy_call = (sy_call_t *)linux32_sys_pselect6
}, /* 335 = pselect6 */
{
ns(struct linux32_sys_ppoll_args),
.sy_call = (sy_call_t *)linux32_sys_ppoll

View File

@ -1,4 +1,4 @@
/* $NetBSD: linux32_systrace_args.c,v 1.1 2021/11/25 03:08:04 ryo Exp $ */
/* $NetBSD: linux32_systrace_args.c,v 1.2 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call argument to DTrace register array conversion.
@ -1924,6 +1924,18 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_
*n_args = 3;
break;
}
/* linux32_sys_pselect6 */
case 335: {
const struct linux32_sys_pselect6_args *p = params;
iarg[0] = SCARG(p, nfds); /* int */
uarg[1] = (intptr_t) SCARG(p, readfds).i32; /* netbsd32_fd_setp_t */
uarg[2] = (intptr_t) SCARG(p, writefds).i32; /* netbsd32_fd_setp_t */
uarg[3] = (intptr_t) SCARG(p, exceptfds).i32; /* netbsd32_fd_setp_t */
uarg[4] = (intptr_t) SCARG(p, timeout).i32; /* linux32_timespecp_t */
uarg[5] = (intptr_t) SCARG(p, ss).i32; /* linux32_sized_sigsetp_t */
*n_args = 6;
break;
}
/* linux32_sys_ppoll */
case 336: {
const struct linux32_sys_ppoll_args *p = params;
@ -5241,6 +5253,31 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
break;
};
break;
/* linux32_sys_pselect6 */
case 335:
switch(ndx) {
case 0:
p = "int";
break;
case 1:
p = "netbsd32_fd_setp_t";
break;
case 2:
p = "netbsd32_fd_setp_t";
break;
case 3:
p = "netbsd32_fd_setp_t";
break;
case 4:
p = "linux32_timespecp_t";
break;
case 5:
p = "linux32_sized_sigsetp_t";
break;
default:
break;
};
break;
/* linux32_sys_ppoll */
case 336:
switch(ndx) {
@ -6634,6 +6671,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
if (ndx == 0 || ndx == 1)
p = "int";
break;
/* linux32_sys_pselect6 */
case 335:
if (ndx == 0 || ndx == 1)
p = "int";
break;
/* linux32_sys_ppoll */
case 336:
if (ndx == 0 || ndx == 1)

View File

@ -1,10 +1,10 @@
/* $NetBSD: linux32_syscall.h,v 1.85 2021/09/20 02:20:31 thorpej Exp $ */
/* $NetBSD: linux32_syscall.h,v 1.86 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.75 2021/09/20 02:20:03 thorpej Exp
* created from NetBSD: syscalls.master,v 1.76 2021/11/27 21:15:07 ryo Exp
*/
#ifndef _LINUX32_SYS_SYSCALL_H_
@ -705,6 +705,9 @@
/* syscall: "faccessat" ret: "int" args: "int" "netbsd32_charp" "int" */
#define LINUX32_SYS_faccessat 307
/* syscall: "pselect6" ret: "int" args: "int" "netbsd32_fd_setp_t" "netbsd32_fd_setp_t" "netbsd32_fd_setp_t" "linux32_timespecp_t" "linux32_sized_sigsetp_t" */
#define LINUX32_SYS_pselect6 308
/* syscall: "ppoll" ret: "int" args: "netbsd32_pollfdp_t" "u_int" "linux32_timespecp_t" "linux32_sigsetp_t" */
#define LINUX32_SYS_ppoll 309

View File

@ -1,10 +1,10 @@
/* $NetBSD: linux32_syscallargs.h,v 1.85 2021/09/20 02:20:31 thorpej Exp $ */
/* $NetBSD: linux32_syscallargs.h,v 1.86 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.75 2021/09/20 02:20:03 thorpej Exp
* created from NetBSD: syscalls.master,v 1.76 2021/11/27 21:15:07 ryo Exp
*/
#ifndef _LINUX32_SYS_SYSCALLARGS_H_
@ -1009,6 +1009,16 @@ struct linux32_sys_faccessat_args {
};
check_syscall_args(linux32_sys_faccessat)
struct linux32_sys_pselect6_args {
syscallarg(int) nfds;
syscallarg(netbsd32_fd_setp_t) readfds;
syscallarg(netbsd32_fd_setp_t) writefds;
syscallarg(netbsd32_fd_setp_t) exceptfds;
syscallarg(linux32_timespecp_t) timeout;
syscallarg(linux32_sized_sigsetp_t) ss;
};
check_syscall_args(linux32_sys_pselect6)
struct linux32_sys_ppoll_args {
syscallarg(netbsd32_pollfdp_t) fds;
syscallarg(u_int) nfds;
@ -1539,6 +1549,8 @@ int linux32_sys_fchmodat(struct lwp *, const struct linux32_sys_fchmodat_args *,
int linux32_sys_faccessat(struct lwp *, const struct linux32_sys_faccessat_args *, register_t *);
int linux32_sys_pselect6(struct lwp *, const struct linux32_sys_pselect6_args *, register_t *);
int linux32_sys_ppoll(struct lwp *, const struct linux32_sys_ppoll_args *, register_t *);
int netbsd32___futex_set_robust_list(struct lwp *, const struct netbsd32___futex_set_robust_list_args *, register_t *);

View File

@ -1,14 +1,14 @@
/* $NetBSD: linux32_syscalls.c,v 1.85 2021/09/20 02:20:31 thorpej Exp $ */
/* $NetBSD: linux32_syscalls.c,v 1.86 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.75 2021/09/20 02:20:03 thorpej Exp
* created from NetBSD: syscalls.master,v 1.76 2021/11/27 21:15:07 ryo Exp
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.85 2021/09/20 02:20:31 thorpej Exp $");
__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.86 2021/11/27 21:15:53 ryo Exp $");
#if defined(_KERNEL_OPT)
#include <sys/param.h>
@ -347,7 +347,7 @@ const char *const linux32_syscallnames[] = {
/* 305 */ "netbsd32_readlinkat",
/* 306 */ "fchmodat",
/* 307 */ "faccessat",
/* 308 */ "#308 (unimplemented pselect6)",
/* 308 */ "pselect6",
/* 309 */ "ppoll",
/* 310 */ "#310 (unimplemented unshare)",
/* 311 */ "netbsd32___futex_set_robust_list",
@ -866,7 +866,7 @@ const char *const altlinux32_syscallnames[] = {
/* 305 */ "readlinkat",
/* 306 */ NULL, /* fchmodat */
/* 307 */ NULL, /* faccessat */
/* 308 */ NULL, /* unimplemented pselect6 */
/* 308 */ NULL, /* pselect6 */
/* 309 */ NULL, /* ppoll */
/* 310 */ NULL, /* unimplemented unshare */
/* 311 */ "__futex_set_robust_list",

View File

@ -1,14 +1,14 @@
/* $NetBSD: linux32_sysent.c,v 1.85 2021/09/20 02:20:31 thorpej Exp $ */
/* $NetBSD: linux32_sysent.c,v 1.86 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
* created from NetBSD: syscalls.master,v 1.75 2021/09/20 02:20:03 thorpej Exp
* created from NetBSD: syscalls.master,v 1.76 2021/11/27 21:15:07 ryo Exp
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.85 2021/09/20 02:20:31 thorpej Exp $");
__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.86 2021/11/27 21:15:53 ryo Exp $");
#include <sys/param.h>
#include <sys/poll.h>
@ -1175,8 +1175,9 @@ struct sysent linux32_sysent[] = {
.sy_call = (sy_call_t *)linux32_sys_faccessat
}, /* 307 = faccessat */
{
.sy_call = linux_sys_nosys,
}, /* 308 = filler */
ns(struct linux32_sys_pselect6_args),
.sy_call = (sy_call_t *)linux32_sys_pselect6
}, /* 308 = pselect6 */
{
ns(struct linux32_sys_ppoll_args),
.sy_call = (sy_call_t *)linux32_sys_ppoll

View File

@ -1,4 +1,4 @@
/* $NetBSD: linux32_systrace_args.c,v 1.12 2021/09/20 02:20:31 thorpej Exp $ */
/* $NetBSD: linux32_systrace_args.c,v 1.13 2021/11/27 21:15:53 ryo Exp $ */
/*
* System call argument to DTrace register array conversion.
@ -1851,6 +1851,18 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_
*n_args = 3;
break;
}
/* linux32_sys_pselect6 */
case 308: {
const struct linux32_sys_pselect6_args *p = params;
iarg[0] = SCARG(p, nfds); /* int */
uarg[1] = (intptr_t) SCARG(p, readfds).i32; /* netbsd32_fd_setp_t */
uarg[2] = (intptr_t) SCARG(p, writefds).i32; /* netbsd32_fd_setp_t */
uarg[3] = (intptr_t) SCARG(p, exceptfds).i32; /* netbsd32_fd_setp_t */
uarg[4] = (intptr_t) SCARG(p, timeout).i32; /* linux32_timespecp_t */
uarg[5] = (intptr_t) SCARG(p, ss).i32; /* linux32_sized_sigsetp_t */
*n_args = 6;
break;
}
/* linux32_sys_ppoll */
case 309: {
const struct linux32_sys_ppoll_args *p = params;
@ -4983,6 +4995,31 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
break;
};
break;
/* linux32_sys_pselect6 */
case 308:
switch(ndx) {
case 0:
p = "int";
break;
case 1:
p = "netbsd32_fd_setp_t";
break;
case 2:
p = "netbsd32_fd_setp_t";
break;
case 3:
p = "netbsd32_fd_setp_t";
break;
case 4:
p = "linux32_timespecp_t";
break;
case 5:
p = "linux32_sized_sigsetp_t";
break;
default:
break;
};
break;
/* linux32_sys_ppoll */
case 309:
switch(ndx) {
@ -6295,6 +6332,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz)
if (ndx == 0 || ndx == 1)
p = "int";
break;
/* linux32_sys_pselect6 */
case 308:
if (ndx == 0 || ndx == 1)
p = "int";
break;
/* linux32_sys_ppoll */
case 309:
if (ndx == 0 || ndx == 1)