This commit is contained in:
maxv 2019-03-24 16:39:46 +00:00
parent ddc423bf95
commit 27667013cc
4 changed files with 175 additions and 127 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: linux_syscall.h,v 1.107 2018/08/10 21:47:14 pgoyette Exp $ */
/* $NetBSD: linux_syscall.h,v 1.108 2019/03/24 16:39:46 maxv Exp $ */
/*
* System call numbers.
@ -30,6 +30,9 @@
/* syscall: "close" ret: "int" args: "int" */
#define LINUX_SYS_close 6
/* syscall: "osf1_wait4" ret: "int" args: "int" "int *" "int" "struct osf1_rusage *" */
#define LINUX_SYS_osf1_wait4 7
/* syscall: "creat" ret: "int" args: "const char *" "linux_umode_t" */
#define LINUX_SYS_creat 8
@ -63,6 +66,9 @@
/* syscall: "getpid_with_ppid" ret: "pid_t" args: */
#define LINUX_SYS_getpid_with_ppid 20
/* syscall: "osf1_mount" ret: "int" args: "int" "const char *" "int" "void *" */
#define LINUX_SYS_osf1_mount 21
/* syscall: "setuid" ret: "int" args: "uid_t" */
#define LINUX_SYS_setuid 23
@ -90,6 +96,9 @@
/* syscall: "pipe" ret: "int" args: */
#define LINUX_SYS_pipe 42
/* syscall: "osf1_set_program_attributes" ret: "int" args: "void *" "unsigned long" "void *" "unsigned long" */
#define LINUX_SYS_osf1_set_program_attributes 43
/* syscall: "open" ret: "int" args: "const char *" "int" "linux_umode_t" */
#define LINUX_SYS_open 45
@ -156,6 +165,9 @@
/* syscall: "setgroups" ret: "int" args: "int" "const gid_t *" */
#define LINUX_SYS_setgroups 80
/* syscall: "osf1_setitimer" ret: "int" args: "int" "struct osf1_itimerval *" "struct osf1_itimerval *" */
#define LINUX_SYS_osf1_setitimer 83
/* syscall: "gethostname" ret: "int" args: "char *" "u_int" */
#define LINUX_SYS_gethostname 87
@ -171,6 +183,9 @@
/* syscall: "fcntl" ret: "int" args: "int" "int" "void *" */
#define LINUX_SYS_fcntl 92
/* syscall: "osf1_select" ret: "int" args: "u_int" "fd_set *" "fd_set *" "fd_set *" "struct osf1_timeval *" */
#define LINUX_SYS_osf1_select 93
/* syscall: "poll" ret: "int" args: "struct pollfd *" "u_int" "int" */
#define LINUX_SYS_poll 94
@ -222,6 +237,12 @@
/* syscall: "sendmsg" ret: "ssize_t" args: "int" "const struct linux_msghdr *" "int" */
#define LINUX_SYS_sendmsg 114
/* syscall: "osf1_gettimeofday" ret: "int" args: "struct osf1_timeval *" "struct osf1_timezone *" */
#define LINUX_SYS_osf1_gettimeofday 116
/* syscall: "osf1_getrusage" ret: "int" args: "int" "struct osf1_rusage *" */
#define LINUX_SYS_osf1_getrusage 117
/* syscall: "getsockopt" ret: "int" args: "int" "int" "int" "void *" "int *" */
#define LINUX_SYS_getsockopt 118
@ -231,6 +252,9 @@
/* syscall: "writev" ret: "ssize_t" args: "int" "const struct iovec *" "int" */
#define LINUX_SYS_writev 121
/* syscall: "osf1_settimeofday" ret: "int" args: "struct osf1_timeval *" "struct osf1_timezone *" */
#define LINUX_SYS_osf1_settimeofday 122
/* syscall: "__posix_fchown" ret: "int" args: "int" "uid_t" "gid_t" */
#define LINUX_SYS___posix_fchown 123
@ -276,6 +300,9 @@
/* syscall: "rmdir" ret: "int" args: "const char *" */
#define LINUX_SYS_rmdir 137
/* syscall: "osf1_utimes" ret: "int" args: "const char *" "const struct osf1_timeval *" */
#define LINUX_SYS_osf1_utimes 138
/* syscall: "getpeername" ret: "int" args: "int" "void *" "int *" */
#define LINUX_SYS_getpeername 141
@ -297,6 +324,12 @@
/* syscall: "getdirentries" ret: "int" args: "int" "char *" "u_int" "long *" */
#define LINUX_SYS_getdirentries 159
/* syscall: "osf1_statfs" ret: "int" args: "const char *" "struct osf1_statfs *" "int" */
#define LINUX_SYS_osf1_statfs 160
/* syscall: "osf1_fstatfs" ret: "int" args: "int" "struct osf1_statfs *" "int" */
#define LINUX_SYS_osf1_fstatfs 161
/* syscall: "getdomainname" ret: "int" args: "char *" "int" */
#define LINUX_SYS_getdomainname 165
@ -363,6 +396,18 @@
/* syscall: "getsid" ret: "pid_t" args: "pid_t" */
#define LINUX_SYS_getsid 234
/* syscall: "osf1_sysinfo" ret: "int" args: "int" "char *" "long" */
#define LINUX_SYS_osf1_sysinfo 241
/* syscall: "osf1_usleep_thread" ret: "int" args: "struct osf1_timeval *" "struct osf1_timeval *" */
#define LINUX_SYS_osf1_usleep_thread 251
/* syscall: "osf1_getsysinfo" ret: "int" args: "u_long" "void *" "u_long" "void *" "u_long" */
#define LINUX_SYS_osf1_getsysinfo 256
/* syscall: "osf1_setsysinfo" ret: "int" args: "u_long" "void *" "u_long" "void *" "u_long" */
#define LINUX_SYS_osf1_setsysinfo 257
/* syscall: "fdatasync" ret: "int" args: "int" */
#define LINUX_SYS_fdatasync 261

View File

@ -1,4 +1,4 @@
/* $NetBSD: linux_syscallargs.h,v 1.106 2018/08/10 21:47:14 pgoyette Exp $ */
/* $NetBSD: linux_syscallargs.h,v 1.107 2019/03/24 16:39:46 maxv Exp $ */
/*
* System call argument lists.
@ -45,13 +45,13 @@ struct sys_write_args;
struct sys_close_args;
struct osf1_sys_wait4_args {
struct linux_sys_osf1_wait4_args {
syscallarg(int) pid;
syscallarg(int *) status;
syscallarg(int) options;
syscallarg(struct osf1_rusage *) rusage;
};
check_syscall_args(osf1_sys_wait4)
check_syscall_args(linux_sys_osf1_wait4)
struct linux_sys_creat_args {
syscallarg(const char *) path;
@ -88,13 +88,13 @@ check_syscall_args(linux_sys_brk)
struct compat_43_sys_lseek_args;
struct osf1_sys_mount_args {
struct linux_sys_osf1_mount_args {
syscallarg(int) type;
syscallarg(const char *) path;
syscallarg(int) flags;
syscallarg(void *) data;
};
check_syscall_args(osf1_sys_mount)
check_syscall_args(linux_sys_osf1_mount)
struct sys_setuid_args;
@ -118,13 +118,13 @@ struct sys_setpgid_args;
struct sys_dup_args;
struct osf1_sys_set_program_attributes_args {
struct linux_sys_osf1_set_program_attributes_args {
syscallarg(void *) taddr;
syscallarg(unsigned long) tsize;
syscallarg(void *) daddr;
syscallarg(unsigned long) dsize;
};
check_syscall_args(osf1_sys_set_program_attributes)
check_syscall_args(linux_sys_osf1_set_program_attributes)
struct linux_sys_open_args {
syscallarg(const char *) path;
@ -188,12 +188,12 @@ struct sys_getgroups_args;
struct sys_setgroups_args;
struct osf1_sys_setitimer_args {
struct linux_sys_osf1_setitimer_args {
syscallarg(int) which;
syscallarg(struct osf1_itimerval *) itv;
syscallarg(struct osf1_itimerval *) oitv;
};
check_syscall_args(osf1_sys_setitimer)
check_syscall_args(linux_sys_osf1_setitimer)
struct compat_43_sys_gethostname_args;
@ -214,14 +214,14 @@ struct linux_sys_fcntl_args {
};
check_syscall_args(linux_sys_fcntl)
struct osf1_sys_select_args {
struct linux_sys_osf1_select_args {
syscallarg(u_int) nd;
syscallarg(fd_set *) in;
syscallarg(fd_set *) ou;
syscallarg(fd_set *) ex;
syscallarg(struct osf1_timeval *) tv;
};
check_syscall_args(osf1_sys_select)
check_syscall_args(linux_sys_osf1_select)
struct sys_poll_args;
@ -318,17 +318,17 @@ struct linux_sys_sendmsg_args {
};
check_syscall_args(linux_sys_sendmsg)
struct osf1_sys_gettimeofday_args {
struct linux_sys_osf1_gettimeofday_args {
syscallarg(struct osf1_timeval *) tv;
syscallarg(struct osf1_timezone *) tzp;
};
check_syscall_args(osf1_sys_gettimeofday)
check_syscall_args(linux_sys_osf1_gettimeofday)
struct osf1_sys_getrusage_args {
struct linux_sys_osf1_getrusage_args {
syscallarg(int) who;
syscallarg(struct osf1_rusage *) rusage;
};
check_syscall_args(osf1_sys_getrusage)
check_syscall_args(linux_sys_osf1_getrusage)
struct linux_sys_getsockopt_args {
syscallarg(int) s;
@ -343,11 +343,11 @@ struct sys_readv_args;
struct sys_writev_args;
struct osf1_sys_settimeofday_args {
struct linux_sys_osf1_settimeofday_args {
syscallarg(struct osf1_timeval *) tv;
syscallarg(struct osf1_timezone *) tzp;
};
check_syscall_args(osf1_sys_settimeofday)
check_syscall_args(linux_sys_osf1_settimeofday)
struct sys___posix_fchown_args;
@ -401,11 +401,11 @@ struct sys_mkdir_args;
struct sys_rmdir_args;
struct osf1_sys_utimes_args {
struct linux_sys_osf1_utimes_args {
syscallarg(const char *) path;
syscallarg(const struct osf1_timeval *) tptr;
};
check_syscall_args(osf1_sys_utimes)
check_syscall_args(linux_sys_osf1_utimes)
struct linux_sys_getpeername_args {
syscallarg(int) fdes;
@ -442,19 +442,19 @@ check_syscall_args(linux_sys_sigaction)
struct compat_43_sys_getdirentries_args;
struct osf1_sys_statfs_args {
struct linux_sys_osf1_statfs_args {
syscallarg(const char *) path;
syscallarg(struct osf1_statfs *) buf;
syscallarg(int) len;
};
check_syscall_args(osf1_sys_statfs)
check_syscall_args(linux_sys_osf1_statfs)
struct osf1_sys_fstatfs_args {
struct linux_sys_osf1_fstatfs_args {
syscallarg(int) fd;
syscallarg(struct osf1_statfs *) buf;
syscallarg(int) len;
};
check_syscall_args(osf1_sys_fstatfs)
check_syscall_args(linux_sys_osf1_fstatfs)
struct compat_09_sys_getdomainname_args;
@ -514,36 +514,36 @@ struct sys_getpgid_args;
struct sys_getsid_args;
struct osf1_sys_sysinfo_args {
struct linux_sys_osf1_sysinfo_args {
syscallarg(int) cmd;
syscallarg(char) buf;
syscallarg(char *) buf;
syscallarg(long) len;
};
check_syscall_args(osf1_sys_sysinfo)
check_syscall_args(linux_sys_osf1_sysinfo)
struct osf1_sys_usleep_thread_args {
struct linux_sys_osf1_usleep_thread_args {
syscallarg(struct osf1_timeval *) sleep;
syscallarg(struct osf1_timeval *) slept;
};
check_syscall_args(osf1_sys_usleep_thread)
check_syscall_args(linux_sys_osf1_usleep_thread)
struct osf1_sys_getsysinfo_args {
struct linux_sys_osf1_getsysinfo_args {
syscallarg(u_long) op;
syscallarg(void *) buffer;
syscallarg(u_long) nbytes;
syscallarg(void *) arg;
syscallarg(u_long) flag;
};
check_syscall_args(osf1_sys_getsysinfo)
check_syscall_args(linux_sys_osf1_getsysinfo)
struct osf1_sys_setsysinfo_args {
struct linux_sys_osf1_setsysinfo_args {
syscallarg(u_long) op;
syscallarg(void *) buffer;
syscallarg(u_long) nbytes;
syscallarg(void *) arg;
syscallarg(u_long) flag;
};
check_syscall_args(osf1_sys_setsysinfo)
check_syscall_args(linux_sys_osf1_setsysinfo)
struct linux_sys_fdatasync_args {
syscallarg(int) fd;
@ -1171,7 +1171,7 @@ int sys_write(struct lwp *, const struct sys_write_args *, register_t *);
int sys_close(struct lwp *, const struct sys_close_args *, register_t *);
int osf1_sys_wait4(struct lwp *, const struct osf1_sys_wait4_args *, register_t *);
int linux_sys_osf1_wait4(struct lwp *, const struct linux_sys_osf1_wait4_args *, register_t *);
int linux_sys_creat(struct lwp *, const struct linux_sys_creat_args *, register_t *);
@ -1195,7 +1195,7 @@ int compat_43_sys_lseek(struct lwp *, const struct compat_43_sys_lseek_args *, r
int sys_getpid_with_ppid(struct lwp *, const void *, register_t *);
int osf1_sys_mount(struct lwp *, const struct osf1_sys_mount_args *, register_t *);
int linux_sys_osf1_mount(struct lwp *, const struct linux_sys_osf1_mount_args *, register_t *);
int sys_setuid(struct lwp *, const struct sys_setuid_args *, register_t *);
@ -1215,7 +1215,7 @@ int sys_dup(struct lwp *, const struct sys_dup_args *, register_t *);
int linux_sys_pipe(struct lwp *, const void *, register_t *);
int osf1_sys_set_program_attributes(struct lwp *, const struct osf1_sys_set_program_attributes_args *, register_t *);
int linux_sys_osf1_set_program_attributes(struct lwp *, const struct linux_sys_osf1_set_program_attributes_args *, register_t *);
int linux_sys_open(struct lwp *, const struct linux_sys_open_args *, register_t *);
@ -1261,7 +1261,7 @@ int sys_getgroups(struct lwp *, const struct sys_getgroups_args *, register_t *)
int sys_setgroups(struct lwp *, const struct sys_setgroups_args *, register_t *);
int osf1_sys_setitimer(struct lwp *, const struct osf1_sys_setitimer_args *, register_t *);
int linux_sys_osf1_setitimer(struct lwp *, const struct linux_sys_osf1_setitimer_args *, register_t *);
int compat_43_sys_gethostname(struct lwp *, const struct compat_43_sys_gethostname_args *, register_t *);
@ -1273,7 +1273,7 @@ int linux_sys_fstat(struct lwp *, const struct linux_sys_fstat_args *, register_
int linux_sys_fcntl(struct lwp *, const struct linux_sys_fcntl_args *, register_t *);
int osf1_sys_select(struct lwp *, const struct osf1_sys_select_args *, register_t *);
int linux_sys_osf1_select(struct lwp *, const struct linux_sys_osf1_select_args *, register_t *);
int sys_poll(struct lwp *, const struct sys_poll_args *, register_t *);
@ -1309,9 +1309,9 @@ int linux_sys_recvmsg(struct lwp *, const struct linux_sys_recvmsg_args *, regis
int linux_sys_sendmsg(struct lwp *, const struct linux_sys_sendmsg_args *, register_t *);
int osf1_sys_gettimeofday(struct lwp *, const struct osf1_sys_gettimeofday_args *, register_t *);
int linux_sys_osf1_gettimeofday(struct lwp *, const struct linux_sys_osf1_gettimeofday_args *, register_t *);
int osf1_sys_getrusage(struct lwp *, const struct osf1_sys_getrusage_args *, register_t *);
int linux_sys_osf1_getrusage(struct lwp *, const struct linux_sys_osf1_getrusage_args *, register_t *);
int linux_sys_getsockopt(struct lwp *, const struct linux_sys_getsockopt_args *, register_t *);
@ -1319,7 +1319,7 @@ int sys_readv(struct lwp *, const struct sys_readv_args *, register_t *);
int sys_writev(struct lwp *, const struct sys_writev_args *, register_t *);
int osf1_sys_settimeofday(struct lwp *, const struct osf1_sys_settimeofday_args *, register_t *);
int linux_sys_osf1_settimeofday(struct lwp *, const struct linux_sys_osf1_settimeofday_args *, register_t *);
int sys___posix_fchown(struct lwp *, const struct sys___posix_fchown_args *, register_t *);
@ -1351,7 +1351,7 @@ int sys_mkdir(struct lwp *, const struct sys_mkdir_args *, register_t *);
int sys_rmdir(struct lwp *, const struct sys_rmdir_args *, register_t *);
int osf1_sys_utimes(struct lwp *, const struct osf1_sys_utimes_args *, register_t *);
int linux_sys_osf1_utimes(struct lwp *, const struct linux_sys_osf1_utimes_args *, register_t *);
int linux_sys_getpeername(struct lwp *, const struct linux_sys_getpeername_args *, register_t *);
@ -1367,9 +1367,9 @@ int linux_sys_sigaction(struct lwp *, const struct linux_sys_sigaction_args *, r
int compat_43_sys_getdirentries(struct lwp *, const struct compat_43_sys_getdirentries_args *, register_t *);
int osf1_sys_statfs(struct lwp *, const struct osf1_sys_statfs_args *, register_t *);
int linux_sys_osf1_statfs(struct lwp *, const struct linux_sys_osf1_statfs_args *, register_t *);
int osf1_sys_fstatfs(struct lwp *, const struct osf1_sys_fstatfs_args *, register_t *);
int linux_sys_osf1_fstatfs(struct lwp *, const struct linux_sys_osf1_fstatfs_args *, register_t *);
int compat_09_sys_getdomainname(struct lwp *, const struct compat_09_sys_getdomainname_args *, register_t *);
@ -1418,13 +1418,13 @@ int sys_getpgid(struct lwp *, const struct sys_getpgid_args *, register_t *);
int sys_getsid(struct lwp *, const struct sys_getsid_args *, register_t *);
int osf1_sys_sysinfo(struct lwp *, const struct osf1_sys_sysinfo_args *, register_t *);
int linux_sys_osf1_sysinfo(struct lwp *, const struct linux_sys_osf1_sysinfo_args *, register_t *);
int osf1_sys_usleep_thread(struct lwp *, const struct osf1_sys_usleep_thread_args *, register_t *);
int linux_sys_osf1_usleep_thread(struct lwp *, const struct linux_sys_osf1_usleep_thread_args *, register_t *);
int osf1_sys_getsysinfo(struct lwp *, const struct osf1_sys_getsysinfo_args *, register_t *);
int linux_sys_osf1_getsysinfo(struct lwp *, const struct linux_sys_osf1_getsysinfo_args *, register_t *);
int osf1_sys_setsysinfo(struct lwp *, const struct osf1_sys_setsysinfo_args *, register_t *);
int linux_sys_osf1_setsysinfo(struct lwp *, const struct linux_sys_osf1_setsysinfo_args *, register_t *);
int linux_sys_fdatasync(struct lwp *, const struct linux_sys_fdatasync_args *, register_t *);

View File

@ -1,4 +1,4 @@
/* $NetBSD: linux_syscalls.c,v 1.108 2018/08/10 21:47:14 pgoyette Exp $ */
/* $NetBSD: linux_syscalls.c,v 1.109 2019/03/24 16:39:47 maxv Exp $ */
/*
* System call names.
@ -8,7 +8,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.108 2018/08/10 21:47:14 pgoyette Exp $");
__KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.109 2019/03/24 16:39:47 maxv Exp $");
#if defined(_KERNEL_OPT)
#if defined(_KERNEL_OPT)
@ -29,6 +29,7 @@ __KERNEL_RCSID(0, "$NetBSD: linux_syscalls.c,v 1.108 2018/08/10 21:47:14 pgoyett
#include <compat/linux/common/linux_shm.h>
#include <compat/linux/common/linux_mmap.h>
#include <compat/linux/linux_syscallargs.h>
#include <compat/linux/arch/alpha/linux_osf1.h>
#else /* _KERNEL_OPT */
#include <sys/null.h>
#endif /* _KERNEL_OPT */
@ -41,7 +42,7 @@ const char *const linux_syscallnames[] = {
/* 4 */ "write",
/* 5 */ "#5 (unimplemented)",
/* 6 */ "close",
/* 7 */ "wait4",
/* 7 */ "osf1_wait4",
/* 8 */ "creat",
/* 9 */ "link",
/* 10 */ "unlink",
@ -55,7 +56,7 @@ const char *const linux_syscallnames[] = {
/* 18 */ "#18 (unimplemented)",
/* 19 */ "lseek",
/* 20 */ "getpid_with_ppid",
/* 21 */ "mount",
/* 21 */ "osf1_mount",
/* 22 */ "#22 (unimplemented umount)",
/* 23 */ "setuid",
/* 24 */ "getuid_with_euid",
@ -77,7 +78,7 @@ const char *const linux_syscallnames[] = {
/* 40 */ "#40 (unimplemented)",
/* 41 */ "dup",
/* 42 */ "pipe",
/* 43 */ "set_program_attributes",
/* 43 */ "osf1_set_program_attributes",
/* 44 */ "#44 (unimplemented)",
/* 45 */ "open",
/* 46 */ "#46 (unimplemented)",
@ -117,7 +118,7 @@ const char *const linux_syscallnames[] = {
/* 80 */ "setgroups",
/* 81 */ "#81 (unimplemented)",
/* 82 */ "#82 (unimplemented setpgrp)",
/* 83 */ "setitimer",
/* 83 */ "osf1_setitimer",
/* 84 */ "#84 (unimplemented)",
/* 85 */ "#85 (unimplemented)",
/* 86 */ "#86 (unimplemented osf1_sys_getitimer)",
@ -127,7 +128,7 @@ const char *const linux_syscallnames[] = {
/* 90 */ "dup2",
/* 91 */ "fstat",
/* 92 */ "fcntl",
/* 93 */ "select",
/* 93 */ "osf1_select",
/* 94 */ "poll",
/* 95 */ "fsync",
/* 96 */ "setpriority",
@ -150,13 +151,13 @@ const char *const linux_syscallnames[] = {
/* 113 */ "recvmsg",
/* 114 */ "sendmsg",
/* 115 */ "#115 (unimplemented)",
/* 116 */ "gettimeofday",
/* 117 */ "getrusage",
/* 116 */ "osf1_gettimeofday",
/* 117 */ "osf1_getrusage",
/* 118 */ "getsockopt",
/* 119 */ "#119 (unimplemented)",
/* 120 */ "readv",
/* 121 */ "writev",
/* 122 */ "settimeofday",
/* 122 */ "osf1_settimeofday",
/* 123 */ "__posix_fchown",
/* 124 */ "fchmod",
/* 125 */ "recvfrom",
@ -172,7 +173,7 @@ const char *const linux_syscallnames[] = {
/* 135 */ "socketpair",
/* 136 */ "mkdir",
/* 137 */ "rmdir",
/* 138 */ "utimes",
/* 138 */ "osf1_utimes",
/* 139 */ "#139 (unimplemented)",
/* 140 */ "#140 (unimplemented)",
/* 141 */ "getpeername",
@ -194,8 +195,8 @@ const char *const linux_syscallnames[] = {
/* 157 */ "#157 (unimplemented)",
/* 158 */ "#158 (unimplemented)",
/* 159 */ "getdirentries",
/* 160 */ "statfs",
/* 161 */ "fstatfs",
/* 160 */ "osf1_statfs",
/* 161 */ "osf1_fstatfs",
/* 162 */ "#162 (unimplemented)",
/* 163 */ "#163 (unimplemented)",
/* 164 */ "#164 (unimplemented)",
@ -295,7 +296,7 @@ const char *const linux_syscallnames[] = {
/* 238 */ "#238 (unimplemented)",
/* 239 */ "#239 (unimplemented)",
/* 240 */ "#240 (unimplemented)",
/* 241 */ "sysinfo",
/* 241 */ "osf1_sysinfo",
/* 242 */ "#242 (unimplemented)",
/* 243 */ "#243 (unimplemented)",
/* 244 */ "#244 (unimplemented osf1_sys_proplist_syscall)",
@ -305,13 +306,13 @@ const char *const linux_syscallnames[] = {
/* 248 */ "#248 (unimplemented)",
/* 249 */ "#249 (unimplemented)",
/* 250 */ "#250 (unimplemented)",
/* 251 */ "usleep_thread",
/* 251 */ "osf1_usleep_thread",
/* 252 */ "#252 (unimplemented)",
/* 253 */ "#253 (unimplemented)",
/* 254 */ "#254 (unimplemented)",
/* 255 */ "#255 (unimplemented sysfs)",
/* 256 */ "getsysinfo",
/* 257 */ "setsysinfo",
/* 256 */ "osf1_getsysinfo",
/* 257 */ "osf1_setsysinfo",
/* 258 */ "#258 (unimplemented)",
/* 259 */ "#259 (unimplemented)",
/* 260 */ "#260 (unimplemented)",
@ -582,7 +583,7 @@ const char *const altlinux_syscallnames[] = {
/* 4 */ NULL, /* write */
/* 5 */ NULL, /* unimplemented */
/* 6 */ NULL, /* close */
/* 7 */ NULL, /* wait4 */
/* 7 */ NULL, /* osf1_wait4 */
/* 8 */ NULL, /* creat */
/* 9 */ NULL, /* link */
/* 10 */ NULL, /* unlink */
@ -596,7 +597,7 @@ const char *const altlinux_syscallnames[] = {
/* 18 */ NULL, /* unimplemented */
/* 19 */ NULL, /* lseek */
/* 20 */ NULL, /* getpid_with_ppid */
/* 21 */ NULL, /* mount */
/* 21 */ NULL, /* osf1_mount */
/* 22 */ NULL, /* unimplemented umount */
/* 23 */ NULL, /* setuid */
/* 24 */ NULL, /* getuid_with_euid */
@ -618,7 +619,7 @@ const char *const altlinux_syscallnames[] = {
/* 40 */ NULL, /* unimplemented */
/* 41 */ NULL, /* dup */
/* 42 */ NULL, /* pipe */
/* 43 */ NULL, /* set_program_attributes */
/* 43 */ NULL, /* osf1_set_program_attributes */
/* 44 */ NULL, /* unimplemented */
/* 45 */ NULL, /* open */
/* 46 */ NULL, /* unimplemented */
@ -658,7 +659,7 @@ const char *const altlinux_syscallnames[] = {
/* 80 */ NULL, /* setgroups */
/* 81 */ NULL, /* unimplemented */
/* 82 */ NULL, /* unimplemented setpgrp */
/* 83 */ NULL, /* setitimer */
/* 83 */ NULL, /* osf1_setitimer */
/* 84 */ NULL, /* unimplemented */
/* 85 */ NULL, /* unimplemented */
/* 86 */ NULL, /* unimplemented osf1_sys_getitimer */
@ -668,7 +669,7 @@ const char *const altlinux_syscallnames[] = {
/* 90 */ NULL, /* dup2 */
/* 91 */ NULL, /* fstat */
/* 92 */ NULL, /* fcntl */
/* 93 */ NULL, /* select */
/* 93 */ NULL, /* osf1_select */
/* 94 */ NULL, /* poll */
/* 95 */ NULL, /* fsync */
/* 96 */ NULL, /* setpriority */
@ -691,13 +692,13 @@ const char *const altlinux_syscallnames[] = {
/* 113 */ NULL, /* recvmsg */
/* 114 */ NULL, /* sendmsg */
/* 115 */ NULL, /* unimplemented */
/* 116 */ NULL, /* gettimeofday */
/* 117 */ NULL, /* getrusage */
/* 116 */ NULL, /* osf1_gettimeofday */
/* 117 */ NULL, /* osf1_getrusage */
/* 118 */ NULL, /* getsockopt */
/* 119 */ NULL, /* unimplemented */
/* 120 */ NULL, /* readv */
/* 121 */ NULL, /* writev */
/* 122 */ NULL, /* settimeofday */
/* 122 */ NULL, /* osf1_settimeofday */
/* 123 */ NULL, /* __posix_fchown */
/* 124 */ NULL, /* fchmod */
/* 125 */ NULL, /* recvfrom */
@ -713,7 +714,7 @@ const char *const altlinux_syscallnames[] = {
/* 135 */ NULL, /* socketpair */
/* 136 */ NULL, /* mkdir */
/* 137 */ NULL, /* rmdir */
/* 138 */ NULL, /* utimes */
/* 138 */ NULL, /* osf1_utimes */
/* 139 */ NULL, /* unimplemented */
/* 140 */ NULL, /* unimplemented */
/* 141 */ NULL, /* getpeername */
@ -735,8 +736,8 @@ const char *const altlinux_syscallnames[] = {
/* 157 */ NULL, /* unimplemented */
/* 158 */ NULL, /* unimplemented */
/* 159 */ NULL, /* getdirentries */
/* 160 */ NULL, /* statfs */
/* 161 */ NULL, /* fstatfs */
/* 160 */ NULL, /* osf1_statfs */
/* 161 */ NULL, /* osf1_fstatfs */
/* 162 */ NULL, /* unimplemented */
/* 163 */ NULL, /* unimplemented */
/* 164 */ NULL, /* unimplemented */
@ -836,7 +837,7 @@ const char *const altlinux_syscallnames[] = {
/* 238 */ NULL, /* unimplemented */
/* 239 */ NULL, /* unimplemented */
/* 240 */ NULL, /* unimplemented */
/* 241 */ NULL, /* sysinfo */
/* 241 */ NULL, /* osf1_sysinfo */
/* 242 */ NULL, /* unimplemented */
/* 243 */ NULL, /* unimplemented */
/* 244 */ NULL, /* unimplemented osf1_sys_proplist_syscall */
@ -846,13 +847,13 @@ const char *const altlinux_syscallnames[] = {
/* 248 */ NULL, /* unimplemented */
/* 249 */ NULL, /* unimplemented */
/* 250 */ NULL, /* unimplemented */
/* 251 */ NULL, /* usleep_thread */
/* 251 */ NULL, /* osf1_usleep_thread */
/* 252 */ NULL, /* unimplemented */
/* 253 */ NULL, /* unimplemented */
/* 254 */ NULL, /* unimplemented */
/* 255 */ NULL, /* unimplemented sysfs */
/* 256 */ NULL, /* getsysinfo */
/* 257 */ NULL, /* setsysinfo */
/* 256 */ NULL, /* osf1_getsysinfo */
/* 257 */ NULL, /* osf1_setsysinfo */
/* 258 */ NULL, /* unimplemented */
/* 259 */ NULL, /* unimplemented */
/* 260 */ NULL, /* unimplemented */

View File

@ -1,4 +1,4 @@
/* $NetBSD: linux_sysent.c,v 1.107 2018/08/10 21:47:14 pgoyette Exp $ */
/* $NetBSD: linux_sysent.c,v 1.108 2019/03/24 16:39:46 maxv Exp $ */
/*
* System call switch table.
@ -8,7 +8,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.107 2018/08/10 21:47:14 pgoyette Exp $");
__KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.108 2019/03/24 16:39:46 maxv Exp $");
#if defined(_KERNEL_OPT)
#include "opt_sysv.h"
@ -28,6 +28,7 @@ __KERNEL_RCSID(0, "$NetBSD: linux_sysent.c,v 1.107 2018/08/10 21:47:14 pgoyette
#include <compat/linux/common/linux_shm.h>
#include <compat/linux/common/linux_mmap.h>
#include <compat/linux/linux_syscallargs.h>
#include <compat/linux/arch/alpha/linux_osf1.h>
#define s(type) sizeof(type)
#define n(type) (sizeof(type)/sizeof (register_t))
@ -62,10 +63,10 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)sys_close
}, /* 6 = close */
{
ns(struct osf1_sys_wait4_args),
ns(struct linux_sys_osf1_wait4_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_wait4
}, /* 7 = wait4 */
.sy_call = (sy_call_t *)linux_sys_osf1_wait4
}, /* 7 = osf1_wait4 */
{
ns(struct linux_sys_creat_args),
.sy_flags = SYCALL_ARG_PTR,
@ -124,10 +125,10 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)sys_getpid_with_ppid
}, /* 20 = getpid_with_ppid */
{
ns(struct osf1_sys_mount_args),
ns(struct linux_sys_osf1_mount_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_mount
}, /* 21 = mount */
.sy_call = (sy_call_t *)linux_sys_osf1_mount
}, /* 21 = osf1_mount */
{
.sy_call = linux_sys_nosys,
}, /* 22 = filler */
@ -199,10 +200,10 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_pipe
}, /* 42 = pipe */
{
ns(struct osf1_sys_set_program_attributes_args),
ns(struct linux_sys_osf1_set_program_attributes_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_set_program_attributes
}, /* 43 = set_program_attributes */
.sy_call = (sy_call_t *)linux_sys_osf1_set_program_attributes
}, /* 43 = osf1_set_program_attributes */
{
.sy_call = linux_sys_nosys,
}, /* 44 = filler */
@ -354,10 +355,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 82 = filler */
{
ns(struct osf1_sys_setitimer_args),
ns(struct linux_sys_osf1_setitimer_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_setitimer
}, /* 83 = setitimer */
.sy_call = (sy_call_t *)linux_sys_osf1_setitimer
}, /* 83 = osf1_setitimer */
{
.sy_call = linux_sys_nosys,
}, /* 84 = filler */
@ -395,10 +396,10 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)linux_sys_fcntl
}, /* 92 = fcntl */
{
ns(struct osf1_sys_select_args),
ns(struct linux_sys_osf1_select_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_select
}, /* 93 = select */
.sy_call = (sy_call_t *)linux_sys_osf1_select
}, /* 93 = osf1_select */
{
ns(struct sys_poll_args),
.sy_flags = SYCALL_ARG_PTR,
@ -495,15 +496,15 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 115 = filler */
{
ns(struct osf1_sys_gettimeofday_args),
ns(struct linux_sys_osf1_gettimeofday_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_gettimeofday
}, /* 116 = gettimeofday */
.sy_call = (sy_call_t *)linux_sys_osf1_gettimeofday
}, /* 116 = osf1_gettimeofday */
{
ns(struct osf1_sys_getrusage_args),
ns(struct linux_sys_osf1_getrusage_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_getrusage
}, /* 117 = getrusage */
.sy_call = (sy_call_t *)linux_sys_osf1_getrusage
}, /* 117 = osf1_getrusage */
{
ns(struct linux_sys_getsockopt_args),
.sy_flags = SYCALL_ARG_PTR,
@ -523,10 +524,10 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)sys_writev
}, /* 121 = writev */
{
ns(struct osf1_sys_settimeofday_args),
ns(struct linux_sys_osf1_settimeofday_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_settimeofday
}, /* 122 = settimeofday */
.sy_call = (sy_call_t *)linux_sys_osf1_settimeofday
}, /* 122 = osf1_settimeofday */
{
ns(struct sys___posix_fchown_args),
.sy_call = (sy_call_t *)sys___posix_fchown
@ -595,10 +596,10 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)sys_rmdir
}, /* 137 = rmdir */
{
ns(struct osf1_sys_utimes_args),
ns(struct linux_sys_osf1_utimes_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_utimes
}, /* 138 = utimes */
.sy_call = (sy_call_t *)linux_sys_osf1_utimes
}, /* 138 = osf1_utimes */
{
.sy_call = linux_sys_nosys,
}, /* 139 = filler */
@ -675,15 +676,15 @@ struct sysent linux_sysent[] = {
.sy_call = (sy_call_t *)compat_43_sys_getdirentries
}, /* 159 = getdirentries */
{
ns(struct osf1_sys_statfs_args),
ns(struct linux_sys_osf1_statfs_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_statfs
}, /* 160 = statfs */
.sy_call = (sy_call_t *)linux_sys_osf1_statfs
}, /* 160 = osf1_statfs */
{
ns(struct osf1_sys_fstatfs_args),
ns(struct linux_sys_osf1_fstatfs_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_fstatfs
}, /* 161 = fstatfs */
.sy_call = (sy_call_t *)linux_sys_osf1_fstatfs
}, /* 161 = osf1_fstatfs */
{
.sy_call = linux_sys_nosys,
}, /* 162 = filler */
@ -996,9 +997,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 240 = filler */
{
ns(struct osf1_sys_sysinfo_args),
.sy_call = (sy_call_t *)osf1_sys_sysinfo
}, /* 241 = sysinfo */
ns(struct linux_sys_osf1_sysinfo_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)linux_sys_osf1_sysinfo
}, /* 241 = osf1_sysinfo */
{
.sy_call = linux_sys_nosys,
}, /* 242 = filler */
@ -1027,10 +1029,10 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 250 = filler */
{
ns(struct osf1_sys_usleep_thread_args),
ns(struct linux_sys_osf1_usleep_thread_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_usleep_thread
}, /* 251 = usleep_thread */
.sy_call = (sy_call_t *)linux_sys_osf1_usleep_thread
}, /* 251 = osf1_usleep_thread */
{
.sy_call = linux_sys_nosys,
}, /* 252 = filler */
@ -1044,15 +1046,15 @@ struct sysent linux_sysent[] = {
.sy_call = linux_sys_nosys,
}, /* 255 = filler */
{
ns(struct osf1_sys_getsysinfo_args),
ns(struct linux_sys_osf1_getsysinfo_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_getsysinfo
}, /* 256 = getsysinfo */
.sy_call = (sy_call_t *)linux_sys_osf1_getsysinfo
}, /* 256 = osf1_getsysinfo */
{
ns(struct osf1_sys_setsysinfo_args),
ns(struct linux_sys_osf1_setsysinfo_args),
.sy_flags = SYCALL_ARG_PTR,
.sy_call = (sy_call_t *)osf1_sys_setsysinfo
}, /* 257 = setsysinfo */
.sy_call = (sy_call_t *)linux_sys_osf1_setsysinfo
}, /* 257 = osf1_setsysinfo */
{
.sy_call = linux_sys_nosys,
}, /* 258 = filler */