summaryrefslogtreecommitdiffstats
path: root/sys/alpha
diff options
context:
space:
mode:
Diffstat (limited to 'sys/alpha')
-rw-r--r--sys/alpha/linux/linux_proto.h21
-rw-r--r--sys/alpha/linux/linux_syscall.h4
-rw-r--r--sys/alpha/linux/linux_sysent.c8
3 files changed, 27 insertions, 6 deletions
diff --git a/sys/alpha/linux/linux_proto.h b/sys/alpha/linux/linux_proto.h
index 269a243..b77cd12 100644
--- a/sys/alpha/linux/linux_proto.h
+++ b/sys/alpha/linux/linux_proto.h
@@ -59,8 +59,15 @@ struct linux_lseek_args {
long off; char off_[PAD_(long)];
int whence; char whence_[PAD_(int)];
};
+struct linux_mount_args {
+ char * specialfile; char specialfile_[PAD_(char *)];
+ char * dir; char dir_[PAD_(char *)];
+ char * filesystemtype; char filesystemtype_[PAD_(char *)];
+ u_long rwflag; char rwflag_[PAD_(u_long)];
+ void * data; char data_[PAD_(void *)];
+};
struct linux_umount_args {
- register_t dummy;
+ char * path; char path_[PAD_(char *)];
};
struct linux_ptrace_args {
register_t dummy;
@@ -82,6 +89,10 @@ struct osf1_sigprocmask_args {
int how; char how_[PAD_(int)];
u_long mask; char mask_[PAD_(u_long)];
};
+struct linux_umount2_args {
+ char * path; char path_[PAD_(char *)];
+ int flags; char flags_[PAD_(int)];
+};
struct linux_ioctl_args {
int fd; char fd_[PAD_(int)];
u_long cmd; char cmd_[PAD_(u_long)];
@@ -358,6 +369,11 @@ struct linux_get_kernel_syms_args {
struct linux_ksyslog_args {
int what; char what_[PAD_(int)];
};
+struct linux_reboot_args {
+ int magic1; char magic1_[PAD_(int)];
+ int magic2; char magic2_[PAD_(int)];
+ int opt; char opt_[PAD_(int)];
+};
struct linux_clone_args {
int flags; char flags_[PAD_(int)];
void * stack; char stack_[PAD_(void *)];
@@ -521,12 +537,14 @@ int linux_chmod __P((struct proc *, struct linux_chmod_args *));
int linux_chown __P((struct proc *, struct linux_chown_args *));
int linux_brk __P((struct proc *, struct linux_brk_args *));
int linux_lseek __P((struct proc *, struct linux_lseek_args *));
+int linux_mount __P((struct proc *, struct linux_mount_args *));
int linux_umount __P((struct proc *, struct linux_umount_args *));
int linux_ptrace __P((struct proc *, struct linux_ptrace_args *));
int linux_access __P((struct proc *, struct linux_access_args *));
int linux_kill __P((struct proc *, struct linux_kill_args *));
int linux_open __P((struct proc *, struct linux_open_args *));
int osf1_sigprocmask __P((struct proc *, struct osf1_sigprocmask_args *));
+int linux_umount2 __P((struct proc *, struct linux_umount2_args *));
int linux_ioctl __P((struct proc *, struct linux_ioctl_args *));
int linux_symlink __P((struct proc *, struct linux_symlink_args *));
int linux_readlink __P((struct proc *, struct linux_readlink_args *));
@@ -589,6 +607,7 @@ int linux_init_module __P((struct proc *, struct linux_init_module_args *));
int linux_delete_module __P((struct proc *, struct linux_delete_module_args *));
int linux_get_kernel_syms __P((struct proc *, struct linux_get_kernel_syms_args *));
int linux_ksyslog __P((struct proc *, struct linux_ksyslog_args *));
+int linux_reboot __P((struct proc *, struct linux_reboot_args *));
int linux_clone __P((struct proc *, struct linux_clone_args *));
int linux_uselib __P((struct proc *, struct linux_uselib_args *));
int linux_sysinfo __P((struct proc *, struct linux_sysinfo_args *));
diff --git a/sys/alpha/linux/linux_syscall.h b/sys/alpha/linux/linux_syscall.h
index 64973ce..39d9a3d 100644
--- a/sys/alpha/linux/linux_syscall.h
+++ b/sys/alpha/linux/linux_syscall.h
@@ -22,6 +22,7 @@
#define LINUX_SYS_linux_brk 17
#define LINUX_SYS_linux_lseek 19
#define LINUX_SYS_getpid 20
+#define LINUX_SYS_linux_mount 21
#define LINUX_SYS_linux_umount 22
#define LINUX_SYS_setuid 23
#define LINUX_SYS_getuid 24
@@ -36,6 +37,7 @@
#define LINUX_SYS_getgid 47
#define LINUX_SYS_osf1_sigprocmask 48
#define LINUX_SYS_acct 51
+#define LINUX_SYS_linux_umount2 52
#define LINUX_SYS_linux_ioctl 54
#define LINUX_SYS_linux_symlink 57
#define LINUX_SYS_linux_readlink 58
@@ -129,7 +131,7 @@
#define LINUX_SYS_linux_delete_module 308
#define LINUX_SYS_linux_get_kernel_syms 309
#define LINUX_SYS_linux_ksyslog 310
-#define LINUX_SYS_reboot 311
+#define LINUX_SYS_linux_reboot 311
#define LINUX_SYS_linux_clone 312
#define LINUX_SYS_linux_uselib 313
#define LINUX_SYS_mlock 314
diff --git a/sys/alpha/linux/linux_sysent.c b/sys/alpha/linux/linux_sysent.c
index 26f2bc6..f447cc2 100644
--- a/sys/alpha/linux/linux_sysent.c
+++ b/sys/alpha/linux/linux_sysent.c
@@ -38,8 +38,8 @@ struct sysent linux_sysent[] = {
{ 0, (sy_call_t *)nosys }, /* 18 = */
{ AS(linux_lseek_args), (sy_call_t *)linux_lseek }, /* 19 = linux_lseek */
{ 0, (sy_call_t *)getpid }, /* 20 = getpid */
- { 0, (sy_call_t *)nosys }, /* 21 = */
- { 0, (sy_call_t *)linux_umount }, /* 22 = linux_umount */
+ { AS(linux_mount_args), (sy_call_t *)linux_mount }, /* 21 = linux_mount */
+ { AS(linux_umount_args), (sy_call_t *)linux_umount }, /* 22 = linux_umount */
{ AS(setuid_args), (sy_call_t *)setuid }, /* 23 = setuid */
{ 0, (sy_call_t *)getuid }, /* 24 = getuid */
{ 0, (sy_call_t *)nosys }, /* 25 = */
@@ -69,7 +69,7 @@ struct sysent linux_sysent[] = {
{ 0, (sy_call_t *)nosys }, /* 49 = */
{ 0, (sy_call_t *)nosys }, /* 50 = */
{ AS(acct_args), (sy_call_t *)acct }, /* 51 = acct */
- { 0, (sy_call_t *)nosys }, /* 52 = */
+ { AS(linux_umount2_args), (sy_call_t *)linux_umount2 }, /* 52 = linux_umount2 */
{ 0, (sy_call_t *)nosys }, /* 53 = */
{ AS(linux_ioctl_args), (sy_call_t *)linux_ioctl }, /* 54 = linux_ioctl */
{ 0, (sy_call_t *)nosys }, /* 55 = */
@@ -328,7 +328,7 @@ struct sysent linux_sysent[] = {
{ 0, (sy_call_t *)linux_delete_module }, /* 308 = linux_delete_module */
{ 0, (sy_call_t *)linux_get_kernel_syms }, /* 309 = linux_get_kernel_syms */
{ AS(linux_ksyslog_args), (sy_call_t *)linux_ksyslog }, /* 310 = linux_ksyslog */
- { AS(reboot_args), (sy_call_t *)reboot }, /* 311 = reboot */
+ { AS(linux_reboot_args), (sy_call_t *)linux_reboot }, /* 311 = linux_reboot */
{ AS(linux_clone_args), (sy_call_t *)linux_clone }, /* 312 = linux_clone */
{ AS(linux_uselib_args), (sy_call_t *)linux_uselib }, /* 313 = linux_uselib */
{ AS(mlock_args), (sy_call_t *)mlock }, /* 314 = mlock */
OpenPOWER on IntegriCloud