diff options
| author | ryo <ryo@NetBSD.org> | 2021-12-02 04:39:44 +0000 |
|---|---|---|
| committer | ryo <ryo@NetBSD.org> | 2021-12-02 04:39:44 +0000 |
| commit | 88bfb20eb191dc67cf1cd06ca1aa1da16ea5cc2c (patch) | |
| tree | 93b84e3557633f8c386dabd853883d6c891dd32d /sys/compat/linux32/arch | |
| parent | d281faeb6da0b9302650c5605e773c0b3d983358 (diff) | |
regen
Diffstat (limited to 'sys/compat/linux32/arch')
10 files changed, 118 insertions, 22 deletions
diff --git a/sys/compat/linux32/arch/aarch64/linux32_syscall.h b/sys/compat/linux32/arch/aarch64/linux32_syscall.h index 2813e342a34..b36a0b683f2 100644 --- a/sys/compat/linux32/arch/aarch64/linux32_syscall.h +++ b/sys/compat/linux32/arch/aarch64/linux32_syscall.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_syscall.h,v 1.2 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_syscall.h,v 1.3 2021/12/02 04:39:45 ryo Exp $ */ /* * System call numbers. @@ -769,6 +769,9 @@ /* syscall: "pwritev" ret: "int" args: "int" "const netbsd32_iovecp_t" "int" "netbsd32_u_long" "netbsd32_u_long" */ #define LINUX32_SYS_pwritev 362 +/* syscall: "prlimit64" ret: "int" args: "pid_t" "int" "netbsd32_rlimitp_t" "netbsd32_rlimitp_t" */ +#define LINUX32_SYS_prlimit64 369 + /* syscall: "netbsd32_getrandom" ret: "netbsd32_ssize_t" args: "netbsd32_voidp" "netbsd32_size_t" "unsigned int" */ #define LINUX32_SYS_netbsd32_getrandom 384 diff --git a/sys/compat/linux32/arch/aarch64/linux32_syscallargs.h b/sys/compat/linux32/arch/aarch64/linux32_syscallargs.h index e162b3f8b08..6795816855d 100644 --- a/sys/compat/linux32/arch/aarch64/linux32_syscallargs.h +++ b/sys/compat/linux32/arch/aarch64/linux32_syscallargs.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_syscallargs.h,v 1.2 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_syscallargs.h,v 1.3 2021/12/02 04:39:45 ryo Exp $ */ /* * System call argument lists. @@ -1096,6 +1096,14 @@ struct linux32_sys_pwritev_args { }; check_syscall_args(linux32_sys_pwritev) +struct linux32_sys_prlimit64_args { + syscallarg(pid_t) pid; + syscallarg(int) which; + syscallarg(netbsd32_rlimitp_t) new_rlp; + syscallarg(netbsd32_rlimitp_t) old_rlp; +}; +check_syscall_args(linux32_sys_prlimit64) + struct netbsd32_getrandom_args; struct linux32_sys_statx_args { @@ -1598,6 +1606,8 @@ int linux32_sys_preadv(struct lwp *, const struct linux32_sys_preadv_args *, reg int linux32_sys_pwritev(struct lwp *, const struct linux32_sys_pwritev_args *, register_t *); +int linux32_sys_prlimit64(struct lwp *, const struct linux32_sys_prlimit64_args *, register_t *); + int netbsd32_getrandom(struct lwp *, const struct netbsd32_getrandom_args *, register_t *); int linux32_sys_statx(struct lwp *, const struct linux32_sys_statx_args *, register_t *); diff --git a/sys/compat/linux32/arch/aarch64/linux32_syscalls.c b/sys/compat/linux32/arch/aarch64/linux32_syscalls.c index bf272a8a17c..6e822ff1fd7 100644 --- a/sys/compat/linux32/arch/aarch64/linux32_syscalls.c +++ b/sys/compat/linux32/arch/aarch64/linux32_syscalls.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_syscalls.c,v 1.2 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_syscalls.c,v 1.3 2021/12/02 04:39:45 ryo Exp $ */ /* * System call names. @@ -8,7 +8,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.2 2021/11/27 21:15:53 ryo Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.3 2021/12/02 04:39:45 ryo Exp $"); #if defined(_KERNEL_OPT) #include <sys/param.h> @@ -405,7 +405,7 @@ const char *const linux32_syscallnames[] = { /* 366 */ "#366 (unimplemented accept4)", /* 367 */ "#367 (unimplemented fanotify_init)", /* 368 */ "#368 (unimplemented fanotify_mark)", - /* 369 */ "#369 (unimplemented prlimit64)", + /* 369 */ "prlimit64", /* 370 */ "#370 (unimplemented name_to_handle_at)", /* 371 */ "#371 (unimplemented open_by_handle_at)", /* 372 */ "#372 (unimplemented clock_adjtime)", @@ -924,7 +924,7 @@ const char *const altlinux32_syscallnames[] = { /* 366 */ NULL, /* unimplemented accept4 */ /* 367 */ NULL, /* unimplemented fanotify_init */ /* 368 */ NULL, /* unimplemented fanotify_mark */ - /* 369 */ NULL, /* unimplemented prlimit64 */ + /* 369 */ NULL, /* prlimit64 */ /* 370 */ NULL, /* unimplemented name_to_handle_at */ /* 371 */ NULL, /* unimplemented open_by_handle_at */ /* 372 */ NULL, /* unimplemented clock_adjtime */ diff --git a/sys/compat/linux32/arch/aarch64/linux32_sysent.c b/sys/compat/linux32/arch/aarch64/linux32_sysent.c index b93419b0050..a585b91f2df 100644 --- a/sys/compat/linux32/arch/aarch64/linux32_sysent.c +++ b/sys/compat/linux32/arch/aarch64/linux32_sysent.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_sysent.c,v 1.2 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_sysent.c,v 1.3 2021/12/02 04:39:45 ryo Exp $ */ /* * System call switch table. @@ -8,7 +8,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.2 2021/11/27 21:15:53 ryo Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.3 2021/12/02 04:39:45 ryo Exp $"); #include <sys/param.h> #include <sys/syscallargs.h> @@ -1379,8 +1379,9 @@ struct sysent linux32_sysent[] = { .sy_call = linux_sys_nosys, }, /* 368 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 369 = filler */ + ns(struct linux32_sys_prlimit64_args), + .sy_call = (sy_call_t *)linux32_sys_prlimit64 + }, /* 369 = prlimit64 */ { .sy_call = linux_sys_nosys, }, /* 370 = filler */ diff --git a/sys/compat/linux32/arch/aarch64/linux32_systrace_args.c b/sys/compat/linux32/arch/aarch64/linux32_systrace_args.c index 720ccce7e5d..eed519541e9 100644 --- a/sys/compat/linux32/arch/aarch64/linux32_systrace_args.c +++ b/sys/compat/linux32/arch/aarch64/linux32_systrace_args.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_systrace_args.c,v 1.2 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_systrace_args.c,v 1.3 2021/12/02 04:39:45 ryo Exp $ */ /* * System call argument to DTrace register array conversion. @@ -2063,6 +2063,16 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 5; break; } + /* linux32_sys_prlimit64 */ + case 369: { + const struct linux32_sys_prlimit64_args *p = params; + iarg[0] = SCARG(p, pid); /* pid_t */ + iarg[1] = SCARG(p, which); /* int */ + uarg[2] = (intptr_t) SCARG(p, new_rlp).i32; /* netbsd32_rlimitp_t */ + uarg[3] = (intptr_t) SCARG(p, old_rlp).i32; /* netbsd32_rlimitp_t */ + *n_args = 4; + break; + } /* netbsd32_getrandom */ case 384: { const struct netbsd32_getrandom_args *p = params; @@ -5505,6 +5515,25 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux32_sys_prlimit64 */ + case 369: + switch(ndx) { + case 0: + p = "pid_t"; + break; + case 1: + p = "int"; + break; + case 2: + p = "netbsd32_rlimitp_t"; + break; + case 3: + p = "netbsd32_rlimitp_t"; + break; + default: + break; + }; + break; /* netbsd32_getrandom */ case 384: switch(ndx) { @@ -6746,6 +6775,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux32_sys_prlimit64 */ + case 369: + if (ndx == 0 || ndx == 1) + p = "int"; + break; /* netbsd32_getrandom */ case 384: if (ndx == 0 || ndx == 1) diff --git a/sys/compat/linux32/arch/amd64/linux32_syscall.h b/sys/compat/linux32/arch/amd64/linux32_syscall.h index 6e475735da3..66335fe1a42 100644 --- a/sys/compat/linux32/arch/amd64/linux32_syscall.h +++ b/sys/compat/linux32/arch/amd64/linux32_syscall.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_syscall.h,v 1.86 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_syscall.h,v 1.87 2021/12/02 04:39:45 ryo Exp $ */ /* * System call numbers. @@ -750,6 +750,9 @@ /* syscall: "pwritev" ret: "int" args: "int" "const netbsd32_iovecp_t" "int" "netbsd32_u_long" "netbsd32_u_long" */ #define LINUX32_SYS_pwritev 334 +/* syscall: "prlimit64" ret: "int" args: "pid_t" "int" "netbsd32_rlimitp_t" "netbsd32_rlimitp_t" */ +#define LINUX32_SYS_prlimit64 340 + #define LINUX32_SYS_MAXSYSCALL 351 #define LINUX32_SYS_NSYSENT 512 #endif /* _LINUX32_SYS_SYSCALL_H_ */ diff --git a/sys/compat/linux32/arch/amd64/linux32_syscallargs.h b/sys/compat/linux32/arch/amd64/linux32_syscallargs.h index 1301ee64e1a..8f8c027e15c 100644 --- a/sys/compat/linux32/arch/amd64/linux32_syscallargs.h +++ b/sys/compat/linux32/arch/amd64/linux32_syscallargs.h @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_syscallargs.h,v 1.86 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_syscallargs.h,v 1.87 2021/12/02 04:39:45 ryo Exp $ */ /* * System call argument lists. @@ -1105,6 +1105,14 @@ struct linux32_sys_pwritev_args { }; check_syscall_args(linux32_sys_pwritev) +struct linux32_sys_prlimit64_args { + syscallarg(pid_t) pid; + syscallarg(int) which; + syscallarg(netbsd32_rlimitp_t) new_rlp; + syscallarg(netbsd32_rlimitp_t) old_rlp; +}; +check_syscall_args(linux32_sys_prlimit64) + /* * System call prototypes. */ @@ -1579,4 +1587,6 @@ int linux32_sys_preadv(struct lwp *, const struct linux32_sys_preadv_args *, reg int linux32_sys_pwritev(struct lwp *, const struct linux32_sys_pwritev_args *, register_t *); +int linux32_sys_prlimit64(struct lwp *, const struct linux32_sys_prlimit64_args *, register_t *); + #endif /* _LINUX32_SYS_SYSCALLARGS_H_ */ diff --git a/sys/compat/linux32/arch/amd64/linux32_syscalls.c b/sys/compat/linux32/arch/amd64/linux32_syscalls.c index eddcaacc645..29553cfadc7 100644 --- a/sys/compat/linux32/arch/amd64/linux32_syscalls.c +++ b/sys/compat/linux32/arch/amd64/linux32_syscalls.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_syscalls.c,v 1.86 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_syscalls.c,v 1.87 2021/12/02 04:39:45 ryo Exp $ */ /* * System call names. @@ -8,7 +8,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.86 2021/11/27 21:15:53 ryo Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux32_syscalls.c,v 1.87 2021/12/02 04:39:45 ryo Exp $"); #if defined(_KERNEL_OPT) #include <sys/param.h> @@ -379,7 +379,7 @@ const char *const linux32_syscallnames[] = { /* 337 */ "#337 (unimplemented recvmmsg)", /* 338 */ "#338 (unimplemented fanotify_init)", /* 339 */ "#339 (unimplemented fanotify_mark)", - /* 340 */ "#340 (unimplemented prlimit64)", + /* 340 */ "prlimit64", /* 341 */ "#341 (unimplemented name_to_handle_at)", /* 342 */ "#342 (unimplemented open_by_handle_at)", /* 343 */ "#343 (unimplemented clock_adjtime)", @@ -898,7 +898,7 @@ const char *const altlinux32_syscallnames[] = { /* 337 */ NULL, /* unimplemented recvmmsg */ /* 338 */ NULL, /* unimplemented fanotify_init */ /* 339 */ NULL, /* unimplemented fanotify_mark */ - /* 340 */ NULL, /* unimplemented prlimit64 */ + /* 340 */ NULL, /* prlimit64 */ /* 341 */ NULL, /* unimplemented name_to_handle_at */ /* 342 */ NULL, /* unimplemented open_by_handle_at */ /* 343 */ NULL, /* unimplemented clock_adjtime */ diff --git a/sys/compat/linux32/arch/amd64/linux32_sysent.c b/sys/compat/linux32/arch/amd64/linux32_sysent.c index 4fa91a2d05e..63be2358a51 100644 --- a/sys/compat/linux32/arch/amd64/linux32_sysent.c +++ b/sys/compat/linux32/arch/amd64/linux32_sysent.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_sysent.c,v 1.86 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_sysent.c,v 1.87 2021/12/02 04:39:45 ryo Exp $ */ /* * System call switch table. @@ -8,7 +8,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.86 2021/11/27 21:15:53 ryo Exp $"); +__KERNEL_RCSID(0, "$NetBSD: linux32_sysent.c,v 1.87 2021/12/02 04:39:45 ryo Exp $"); #include <sys/param.h> #include <sys/poll.h> @@ -1289,8 +1289,9 @@ struct sysent linux32_sysent[] = { .sy_call = linux_sys_nosys, }, /* 339 = filler */ { - .sy_call = linux_sys_nosys, - }, /* 340 = filler */ + ns(struct linux32_sys_prlimit64_args), + .sy_call = (sy_call_t *)linux32_sys_prlimit64 + }, /* 340 = prlimit64 */ { .sy_call = linux_sys_nosys, }, /* 341 = filler */ diff --git a/sys/compat/linux32/arch/amd64/linux32_systrace_args.c b/sys/compat/linux32/arch/amd64/linux32_systrace_args.c index 64d928f4b2c..1569342baa1 100644 --- a/sys/compat/linux32/arch/amd64/linux32_systrace_args.c +++ b/sys/compat/linux32/arch/amd64/linux32_systrace_args.c @@ -1,4 +1,4 @@ -/* $NetBSD: linux32_systrace_args.c,v 1.13 2021/11/27 21:15:53 ryo Exp $ */ +/* $NetBSD: linux32_systrace_args.c,v 1.14 2021/12/02 04:39:45 ryo Exp $ */ /* * System call argument to DTrace register array conversion. @@ -1990,6 +1990,16 @@ systrace_args(register_t sysnum, const void *params, uintptr_t *uarg, size_t *n_ *n_args = 5; break; } + /* linux32_sys_prlimit64 */ + case 340: { + const struct linux32_sys_prlimit64_args *p = params; + iarg[0] = SCARG(p, pid); /* pid_t */ + iarg[1] = SCARG(p, which); /* int */ + uarg[2] = (intptr_t) SCARG(p, new_rlp).i32; /* netbsd32_rlimitp_t */ + uarg[3] = (intptr_t) SCARG(p, old_rlp).i32; /* netbsd32_rlimitp_t */ + *n_args = 4; + break; + } default: *n_args = 0; break; @@ -5247,6 +5257,25 @@ systrace_entry_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) break; }; break; + /* linux32_sys_prlimit64 */ + case 340: + switch(ndx) { + case 0: + p = "pid_t"; + break; + case 1: + p = "int"; + break; + case 2: + p = "netbsd32_rlimitp_t"; + break; + case 3: + p = "netbsd32_rlimitp_t"; + break; + default: + break; + }; + break; default: break; }; @@ -6407,6 +6436,11 @@ systrace_return_setargdesc(int sysnum, int ndx, char *desc, size_t descsz) if (ndx == 0 || ndx == 1) p = "int"; break; + /* linux32_sys_prlimit64 */ + case 340: + if (ndx == 0 || ndx == 1) + p = "int"; + break; default: break; }; |
