Commit e5d9a90c authored by Ivan Kokshaysky's avatar Ivan Kokshaysky Committed by Linus Torvalds

alpha: use syscall wrappers

Convert OSF syscalls and add alpha specific SYSCALL_ALIAS() macro.
Signed-off-by: default avatarIvan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 299b4eaa
...@@ -8,6 +8,7 @@ config ALPHA ...@@ -8,6 +8,7 @@ config ALPHA
select HAVE_AOUT select HAVE_AOUT
select HAVE_IDE select HAVE_IDE
select HAVE_OPROFILE select HAVE_OPROFILE
select HAVE_SYSCALL_WRAPPERS
help help
The Alpha is a 64-bit general-purpose processor designed and The Alpha is a 64-bit general-purpose processor designed and
marketed by the Digital Equipment Corporation of blessed memory, marketed by the Digital Equipment Corporation of blessed memory,
......
...@@ -933,7 +933,7 @@ sys_execve: ...@@ -933,7 +933,7 @@ sys_execve:
osf_sigprocmask: osf_sigprocmask:
.prologue 0 .prologue 0
mov $sp, $18 mov $sp, $18
jmp $31, do_osf_sigprocmask jmp $31, sys_osf_sigprocmask
.end osf_sigprocmask .end osf_sigprocmask
.align 4 .align 4
......
...@@ -54,8 +54,7 @@ extern int do_pipe(int *); ...@@ -54,8 +54,7 @@ extern int do_pipe(int *);
* identical to OSF as we don't return 0 on success, but doing otherwise * identical to OSF as we don't return 0 on success, but doing otherwise
* would require changes to libc. Hopefully this is good enough. * would require changes to libc. Hopefully this is good enough.
*/ */
asmlinkage unsigned long SYSCALL_DEFINE1(osf_brk, unsigned long, brk)
osf_brk(unsigned long brk)
{ {
unsigned long retval = sys_brk(brk); unsigned long retval = sys_brk(brk);
if (brk && brk != retval) if (brk && brk != retval)
...@@ -66,9 +65,9 @@ osf_brk(unsigned long brk) ...@@ -66,9 +65,9 @@ osf_brk(unsigned long brk)
/* /*
* This is pure guess-work.. * This is pure guess-work..
*/ */
asmlinkage int SYSCALL_DEFINE4(osf_set_program_attributes, unsigned long, text_start,
osf_set_program_attributes(unsigned long text_start, unsigned long text_len, unsigned long, text_len, unsigned long, bss_start,
unsigned long bss_start, unsigned long bss_len) unsigned long, bss_len)
{ {
struct mm_struct *mm; struct mm_struct *mm;
...@@ -146,9 +145,9 @@ osf_filldir(void *__buf, const char *name, int namlen, loff_t offset, ...@@ -146,9 +145,9 @@ osf_filldir(void *__buf, const char *name, int namlen, loff_t offset,
return -EFAULT; return -EFAULT;
} }
asmlinkage int SYSCALL_DEFINE4(osf_getdirentries, unsigned int, fd,
osf_getdirentries(unsigned int fd, struct osf_dirent __user *dirent, struct osf_dirent __user *, dirent, unsigned int, count,
unsigned int count, long __user *basep) long __user *, basep)
{ {
int error; int error;
struct file *file; struct file *file;
...@@ -177,9 +176,9 @@ osf_getdirentries(unsigned int fd, struct osf_dirent __user *dirent, ...@@ -177,9 +176,9 @@ osf_getdirentries(unsigned int fd, struct osf_dirent __user *dirent,
#undef NAME_OFFSET #undef NAME_OFFSET
asmlinkage unsigned long SYSCALL_DEFINE6(osf_mmap, unsigned long, addr, unsigned long, len,
osf_mmap(unsigned long addr, unsigned long len, unsigned long prot, unsigned long, prot, unsigned long, flags, unsigned long, fd,
unsigned long flags, unsigned long fd, unsigned long off) unsigned long, off)
{ {
struct file *file = NULL; struct file *file = NULL;
unsigned long ret = -EBADF; unsigned long ret = -EBADF;
...@@ -254,8 +253,8 @@ do_osf_statfs(struct dentry * dentry, struct osf_statfs __user *buffer, ...@@ -254,8 +253,8 @@ do_osf_statfs(struct dentry * dentry, struct osf_statfs __user *buffer,
return error; return error;
} }
asmlinkage int SYSCALL_DEFINE3(osf_statfs, char __user *, pathname,
osf_statfs(char __user *pathname, struct osf_statfs __user *buffer, unsigned long bufsiz) struct osf_statfs __user *, buffer, unsigned long, bufsiz)
{ {
struct path path; struct path path;
int retval; int retval;
...@@ -268,8 +267,8 @@ osf_statfs(char __user *pathname, struct osf_statfs __user *buffer, unsigned lon ...@@ -268,8 +267,8 @@ osf_statfs(char __user *pathname, struct osf_statfs __user *buffer, unsigned lon
return retval; return retval;
} }
asmlinkage int SYSCALL_DEFINE3(osf_fstatfs, unsigned long, fd,
osf_fstatfs(unsigned long fd, struct osf_statfs __user *buffer, unsigned long bufsiz) struct osf_statfs __user *, buffer, unsigned long, bufsiz)
{ {
struct file *file; struct file *file;
int retval; int retval;
...@@ -368,8 +367,8 @@ osf_procfs_mount(char *dirname, struct procfs_args __user *args, int flags) ...@@ -368,8 +367,8 @@ osf_procfs_mount(char *dirname, struct procfs_args __user *args, int flags)
return do_mount("", dirname, "proc", flags, NULL); return do_mount("", dirname, "proc", flags, NULL);
} }
asmlinkage int SYSCALL_DEFINE4(osf_mount, unsigned long, typenr, char __user *, path,
osf_mount(unsigned long typenr, char __user *path, int flag, void __user *data) int, flag, void __user *, data)
{ {
int retval = -EINVAL; int retval = -EINVAL;
char *name; char *name;
...@@ -399,8 +398,7 @@ osf_mount(unsigned long typenr, char __user *path, int flag, void __user *data) ...@@ -399,8 +398,7 @@ osf_mount(unsigned long typenr, char __user *path, int flag, void __user *data)
return retval; return retval;
} }
asmlinkage int SYSCALL_DEFINE1(osf_utsname, char __user *, name)
osf_utsname(char __user *name)
{ {
int error; int error;
...@@ -423,14 +421,12 @@ osf_utsname(char __user *name) ...@@ -423,14 +421,12 @@ osf_utsname(char __user *name)
return error; return error;
} }
asmlinkage unsigned long SYSCALL_DEFINE0(getpagesize)
sys_getpagesize(void)
{ {
return PAGE_SIZE; return PAGE_SIZE;
} }
asmlinkage unsigned long SYSCALL_DEFINE0(getdtablesize)
sys_getdtablesize(void)
{ {
return sysctl_nr_open; return sysctl_nr_open;
} }
...@@ -438,8 +434,7 @@ sys_getdtablesize(void) ...@@ -438,8 +434,7 @@ sys_getdtablesize(void)
/* /*
* For compatibility with OSF/1 only. Use utsname(2) instead. * For compatibility with OSF/1 only. Use utsname(2) instead.
*/ */
asmlinkage int SYSCALL_DEFINE2(osf_getdomainname, char __user *, name, int, namelen)
osf_getdomainname(char __user *name, int namelen)
{ {
unsigned len; unsigned len;
int i; int i;
...@@ -527,8 +522,8 @@ enum pl_code { ...@@ -527,8 +522,8 @@ enum pl_code {
PL_DEL = 5, PL_FDEL = 6 PL_DEL = 5, PL_FDEL = 6
}; };
asmlinkage long SYSCALL_DEFINE2(osf_proplist_syscall, enum pl_code, code,
osf_proplist_syscall(enum pl_code code, union pl_args __user *args) union pl_args __user *, args)
{ {
long error; long error;
int __user *min_buf_size_ptr; int __user *min_buf_size_ptr;
...@@ -567,8 +562,8 @@ osf_proplist_syscall(enum pl_code code, union pl_args __user *args) ...@@ -567,8 +562,8 @@ osf_proplist_syscall(enum pl_code code, union pl_args __user *args)
return error; return error;
} }
asmlinkage int SYSCALL_DEFINE2(osf_sigstack, struct sigstack __user *, uss,
osf_sigstack(struct sigstack __user *uss, struct sigstack __user *uoss) struct sigstack __user *, uoss)
{ {
unsigned long usp = rdusp(); unsigned long usp = rdusp();
unsigned long oss_sp = current->sas_ss_sp + current->sas_ss_size; unsigned long oss_sp = current->sas_ss_sp + current->sas_ss_size;
...@@ -608,8 +603,7 @@ osf_sigstack(struct sigstack __user *uss, struct sigstack __user *uoss) ...@@ -608,8 +603,7 @@ osf_sigstack(struct sigstack __user *uss, struct sigstack __user *uoss)
return error; return error;
} }
asmlinkage long SYSCALL_DEFINE3(osf_sysinfo, int, command, char __user *, buf, long, count)
osf_sysinfo(int command, char __user *buf, long count)
{ {
char *sysinfo_table[] = { char *sysinfo_table[] = {
utsname()->sysname, utsname()->sysname,
...@@ -647,9 +641,8 @@ osf_sysinfo(int command, char __user *buf, long count) ...@@ -647,9 +641,8 @@ osf_sysinfo(int command, char __user *buf, long count)
return err; return err;
} }
asmlinkage unsigned long SYSCALL_DEFINE5(osf_getsysinfo, unsigned long, op, void __user *, buffer,
osf_getsysinfo(unsigned long op, void __user *buffer, unsigned long nbytes, unsigned long, nbytes, int __user *, start, void __user *, arg)
int __user *start, void __user *arg)
{ {
unsigned long w; unsigned long w;
struct percpu_struct *cpu; struct percpu_struct *cpu;
...@@ -705,9 +698,8 @@ osf_getsysinfo(unsigned long op, void __user *buffer, unsigned long nbytes, ...@@ -705,9 +698,8 @@ osf_getsysinfo(unsigned long op, void __user *buffer, unsigned long nbytes,
return -EOPNOTSUPP; return -EOPNOTSUPP;
} }
asmlinkage unsigned long SYSCALL_DEFINE5(osf_setsysinfo, unsigned long, op, void __user *, buffer,
osf_setsysinfo(unsigned long op, void __user *buffer, unsigned long nbytes, unsigned long, nbytes, int __user *, start, void __user *, arg)
int __user *start, void __user *arg)
{ {
switch (op) { switch (op) {
case SSI_IEEE_FP_CONTROL: { case SSI_IEEE_FP_CONTROL: {
...@@ -880,8 +872,8 @@ jiffies_to_timeval32(unsigned long jiffies, struct timeval32 *value) ...@@ -880,8 +872,8 @@ jiffies_to_timeval32(unsigned long jiffies, struct timeval32 *value)
value->tv_sec = jiffies / HZ; value->tv_sec = jiffies / HZ;
} }
asmlinkage int SYSCALL_DEFINE2(osf_gettimeofday, struct timeval32 __user *, tv,
osf_gettimeofday(struct timeval32 __user *tv, struct timezone __user *tz) struct timezone __user *, tz)
{ {
if (tv) { if (tv) {
struct timeval ktv; struct timeval ktv;
...@@ -896,8 +888,8 @@ osf_gettimeofday(struct timeval32 __user *tv, struct timezone __user *tz) ...@@ -896,8 +888,8 @@ osf_gettimeofday(struct timeval32 __user *tv, struct timezone __user *tz)
return 0; return 0;
} }
asmlinkage int SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,
osf_settimeofday(struct timeval32 __user *tv, struct timezone __user *tz) struct timezone __user *, tz)
{ {
struct timespec kts; struct timespec kts;
struct timezone ktz; struct timezone ktz;
...@@ -916,8 +908,7 @@ osf_settimeofday(struct timeval32 __user *tv, struct timezone __user *tz) ...@@ -916,8 +908,7 @@ osf_settimeofday(struct timeval32 __user *tv, struct timezone __user *tz)
return do_sys_settimeofday(tv ? &kts : NULL, tz ? &ktz : NULL); return do_sys_settimeofday(tv ? &kts : NULL, tz ? &ktz : NULL);
} }
asmlinkage int SYSCALL_DEFINE2(osf_getitimer, int, which, struct itimerval32 __user *, it)
osf_getitimer(int which, struct itimerval32 __user *it)
{ {
struct itimerval kit; struct itimerval kit;
int error; int error;
...@@ -929,8 +920,8 @@ osf_getitimer(int which, struct itimerval32 __user *it) ...@@ -929,8 +920,8 @@ osf_getitimer(int which, struct itimerval32 __user *it)
return error; return error;
} }
asmlinkage int SYSCALL_DEFINE3(osf_setitimer, int, which, struct itimerval32 __user *, in,
osf_setitimer(int which, struct itimerval32 __user *in, struct itimerval32 __user *out) struct itimerval32 __user *, out)
{ {
struct itimerval kin, kout; struct itimerval kin, kout;
int error; int error;
...@@ -952,8 +943,8 @@ osf_setitimer(int which, struct itimerval32 __user *in, struct itimerval32 __use ...@@ -952,8 +943,8 @@ osf_setitimer(int which, struct itimerval32 __user *in, struct itimerval32 __use
} }
asmlinkage int SYSCALL_DEFINE2(osf_utimes, char __user *, filename,
osf_utimes(char __user *filename, struct timeval32 __user *tvs) struct timeval32 __user *, tvs)
{ {
struct timespec tv[2]; struct timespec tv[2];
...@@ -979,9 +970,8 @@ osf_utimes(char __user *filename, struct timeval32 __user *tvs) ...@@ -979,9 +970,8 @@ osf_utimes(char __user *filename, struct timeval32 __user *tvs)
#define MAX_SELECT_SECONDS \ #define MAX_SELECT_SECONDS \
((unsigned long) (MAX_SCHEDULE_TIMEOUT / HZ)-1) ((unsigned long) (MAX_SCHEDULE_TIMEOUT / HZ)-1)
asmlinkage int SYSCALL_DEFINE5(osf_select, int, n, fd_set __user *, inp, fd_set __user *, outp,
osf_select(int n, fd_set __user *inp, fd_set __user *outp, fd_set __user *exp, fd_set __user *, exp, struct timeval32 __user *, tvp)
struct timeval32 __user *tvp)
{ {
struct timespec end_time, *to = NULL; struct timespec end_time, *to = NULL;
if (tvp) { if (tvp) {
...@@ -1026,8 +1016,7 @@ struct rusage32 { ...@@ -1026,8 +1016,7 @@ struct rusage32 {
long ru_nivcsw; /* involuntary " */ long ru_nivcsw; /* involuntary " */
}; };
asmlinkage int SYSCALL_DEFINE2(osf_getrusage, int, who, struct rusage32 __user *, ru)
osf_getrusage(int who, struct rusage32 __user *ru)
{ {
struct rusage32 r; struct rusage32 r;
...@@ -1053,9 +1042,8 @@ osf_getrusage(int who, struct rusage32 __user *ru) ...@@ -1053,9 +1042,8 @@ osf_getrusage(int who, struct rusage32 __user *ru)
return copy_to_user(ru, &r, sizeof(r)) ? -EFAULT : 0; return copy_to_user(ru, &r, sizeof(r)) ? -EFAULT : 0;
} }
asmlinkage long SYSCALL_DEFINE4(osf_wait4, pid_t, pid, int __user *, ustatus, int, options,
osf_wait4(pid_t pid, int __user *ustatus, int options, struct rusage32 __user *, ur)
struct rusage32 __user *ur)
{ {
struct rusage r; struct rusage r;
long ret, err; long ret, err;
...@@ -1101,8 +1089,8 @@ osf_wait4(pid_t pid, int __user *ustatus, int options, ...@@ -1101,8 +1089,8 @@ osf_wait4(pid_t pid, int __user *ustatus, int options,
* seems to be a timeval pointer, and I suspect the second * seems to be a timeval pointer, and I suspect the second
* one is the time remaining.. Ho humm.. No documentation. * one is the time remaining.. Ho humm.. No documentation.
*/ */
asmlinkage int SYSCALL_DEFINE2(osf_usleep_thread, struct timeval32 __user *, sleep,
osf_usleep_thread(struct timeval32 __user *sleep, struct timeval32 __user *remain) struct timeval32 __user *, remain)
{ {
struct timeval tmp; struct timeval tmp;
unsigned long ticks; unsigned long ticks;
...@@ -1155,8 +1143,7 @@ struct timex32 { ...@@ -1155,8 +1143,7 @@ struct timex32 {
int :32; int :32; int :32; int :32; int :32; int :32; int :32; int :32;
}; };
asmlinkage int SYSCALL_DEFINE1(old_adjtimex, struct timex32 __user *, txc_p)
sys_old_adjtimex(struct timex32 __user *txc_p)
{ {
struct timex txc; struct timex txc;
int ret; int ret;
...@@ -1267,8 +1254,8 @@ osf_fix_iov_len(const struct iovec __user *iov, unsigned long count) ...@@ -1267,8 +1254,8 @@ osf_fix_iov_len(const struct iovec __user *iov, unsigned long count)
return 0; return 0;
} }
asmlinkage ssize_t SYSCALL_DEFINE3(osf_readv, unsigned long, fd,
osf_readv(unsigned long fd, const struct iovec __user * vector, unsigned long count) const struct iovec __user *, vector, unsigned long, count)
{ {
if (unlikely(personality(current->personality) == PER_OSF4)) if (unlikely(personality(current->personality) == PER_OSF4))
if (osf_fix_iov_len(vector, count)) if (osf_fix_iov_len(vector, count))
...@@ -1276,8 +1263,8 @@ osf_readv(unsigned long fd, const struct iovec __user * vector, unsigned long co ...@@ -1276,8 +1263,8 @@ osf_readv(unsigned long fd, const struct iovec __user * vector, unsigned long co
return sys_readv(fd, vector, count); return sys_readv(fd, vector, count);
} }
asmlinkage ssize_t SYSCALL_DEFINE3(osf_writev, unsigned long, fd,
osf_writev(unsigned long fd, const struct iovec __user * vector, unsigned long count) const struct iovec __user *, vector, unsigned long, count)
{ {
if (unlikely(personality(current->personality) == PER_OSF4)) if (unlikely(personality(current->personality) == PER_OSF4))
if (osf_fix_iov_len(vector, count)) if (osf_fix_iov_len(vector, count))
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include <linux/tty.h> #include <linux/tty.h>
#include <linux/binfmts.h> #include <linux/binfmts.h>
#include <linux/bitops.h> #include <linux/bitops.h>
#include <linux/syscalls.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <asm/sigcontext.h> #include <asm/sigcontext.h>
...@@ -51,8 +52,8 @@ static void do_signal(struct pt_regs *, struct switch_stack *, ...@@ -51,8 +52,8 @@ static void do_signal(struct pt_regs *, struct switch_stack *,
* Note that we don't need to acquire the kernel lock for SMP * Note that we don't need to acquire the kernel lock for SMP
* operation, as all of this is local to this thread. * operation, as all of this is local to this thread.
*/ */
asmlinkage unsigned long SYSCALL_DEFINE3(osf_sigprocmask, int, how, unsigned long, newmask,
do_osf_sigprocmask(int how, unsigned long newmask, struct pt_regs *regs) struct pt_regs *, regs)
{ {
unsigned long oldmask = -EINVAL; unsigned long oldmask = -EINVAL;
...@@ -81,9 +82,9 @@ do_osf_sigprocmask(int how, unsigned long newmask, struct pt_regs *regs) ...@@ -81,9 +82,9 @@ do_osf_sigprocmask(int how, unsigned long newmask, struct pt_regs *regs)
return oldmask; return oldmask;
} }
asmlinkage int SYSCALL_DEFINE3(osf_sigaction, int, sig,
osf_sigaction(int sig, const struct osf_sigaction __user *act, const struct osf_sigaction __user *, act,
struct osf_sigaction __user *oact) struct osf_sigaction __user *, oact)
{ {
struct k_sigaction new_ka, old_ka; struct k_sigaction new_ka, old_ka;
int ret; int ret;
...@@ -112,10 +113,9 @@ osf_sigaction(int sig, const struct osf_sigaction __user *act, ...@@ -112,10 +113,9 @@ osf_sigaction(int sig, const struct osf_sigaction __user *act,
return ret; return ret;
} }
asmlinkage long SYSCALL_DEFINE5(rt_sigaction, int, sig, const struct sigaction __user *, act,
sys_rt_sigaction(int sig, const struct sigaction __user *act, struct sigaction __user *, oact,
struct sigaction __user *oact, size_t, sigsetsize, void __user *, restorer)
size_t sigsetsize, void __user *restorer)
{ {
struct k_sigaction new_ka, old_ka; struct k_sigaction new_ka, old_ka;
int ret; int ret;
......
...@@ -17,7 +17,7 @@ sys_call_table: ...@@ -17,7 +17,7 @@ sys_call_table:
.quad sys_write .quad sys_write
.quad alpha_ni_syscall /* 5 */ .quad alpha_ni_syscall /* 5 */
.quad sys_close .quad sys_close
.quad osf_wait4 .quad sys_osf_wait4
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad sys_link .quad sys_link
.quad sys_unlink /* 10 */ .quad sys_unlink /* 10 */
...@@ -27,11 +27,11 @@ sys_call_table: ...@@ -27,11 +27,11 @@ sys_call_table:
.quad sys_mknod .quad sys_mknod
.quad sys_chmod /* 15 */ .quad sys_chmod /* 15 */
.quad sys_chown .quad sys_chown
.quad osf_brk .quad sys_osf_brk
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad sys_lseek .quad sys_lseek
.quad sys_getxpid /* 20 */ .quad sys_getxpid /* 20 */
.quad osf_mount .quad sys_osf_mount
.quad sys_umount .quad sys_umount
.quad sys_setuid .quad sys_setuid
.quad sys_getxuid .quad sys_getxuid
...@@ -53,7 +53,7 @@ sys_call_table: ...@@ -53,7 +53,7 @@ sys_call_table:
.quad alpha_ni_syscall /* 40 */ .quad alpha_ni_syscall /* 40 */
.quad sys_dup .quad sys_dup
.quad sys_alpha_pipe .quad sys_alpha_pipe
.quad osf_set_program_attributes .quad sys_osf_set_program_attributes
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad sys_open /* 45 */ .quad sys_open /* 45 */
.quad alpha_ni_syscall .quad alpha_ni_syscall
...@@ -81,7 +81,7 @@ sys_call_table: ...@@ -81,7 +81,7 @@ sys_call_table:
.quad sys_newlstat .quad sys_newlstat
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 70 */ .quad alpha_ni_syscall /* 70 */
.quad osf_mmap .quad sys_osf_mmap
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad sys_munmap .quad sys_munmap
.quad sys_mprotect .quad sys_mprotect
...@@ -94,17 +94,17 @@ sys_call_table: ...@@ -94,17 +94,17 @@ sys_call_table:
.quad sys_setgroups /* 80 */ .quad sys_setgroups /* 80 */
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad sys_setpgid .quad sys_setpgid
.quad osf_setitimer .quad sys_osf_setitimer
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 85 */ .quad alpha_ni_syscall /* 85 */
.quad osf_getitimer .quad sys_osf_getitimer
.quad sys_gethostname .quad sys_gethostname
.quad sys_sethostname .quad sys_sethostname
.quad sys_getdtablesize .quad sys_getdtablesize
.quad sys_dup2 /* 90 */ .quad sys_dup2 /* 90 */
.quad sys_newfstat .quad sys_newfstat
.quad sys_fcntl .quad sys_fcntl
.quad osf_select .quad sys_osf_select
.quad sys_poll .quad sys_poll
.quad sys_fsync /* 95 */ .quad sys_fsync /* 95 */
.quad sys_setpriority .quad sys_setpriority
...@@ -123,22 +123,22 @@ sys_call_table: ...@@ -123,22 +123,22 @@ sys_call_table:
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 110 */ .quad alpha_ni_syscall /* 110 */
.quad sys_sigsuspend .quad sys_sigsuspend
.quad osf_sigstack .quad sys_osf_sigstack
.quad sys_recvmsg .quad sys_recvmsg
.quad sys_sendmsg .quad sys_sendmsg
.quad alpha_ni_syscall /* 115 */ .quad alpha_ni_syscall /* 115 */
.quad osf_gettimeofday .quad sys_osf_gettimeofday
.quad osf_getrusage .quad sys_osf_getrusage
.quad sys_getsockopt .quad sys_getsockopt
.quad alpha_ni_syscall .quad alpha_ni_syscall
#ifdef CONFIG_OSF4_COMPAT #ifdef CONFIG_OSF4_COMPAT
.quad osf_readv /* 120 */ .quad sys_osf_readv /* 120 */
.quad osf_writev .quad sys_osf_writev
#else #else
.quad sys_readv /* 120 */ .quad sys_readv /* 120 */
.quad sys_writev .quad sys_writev
#endif #endif
.quad osf_settimeofday .quad sys_osf_settimeofday
.quad sys_fchown .quad sys_fchown
.quad sys_fchmod .quad sys_fchmod
.quad sys_recvfrom /* 125 */ .quad sys_recvfrom /* 125 */
...@@ -154,7 +154,7 @@ sys_call_table: ...@@ -154,7 +154,7 @@ sys_call_table:
.quad sys_socketpair /* 135 */ .quad sys_socketpair /* 135 */
.quad sys_mkdir .quad sys_mkdir
.quad sys_rmdir .quad sys_rmdir
.quad osf_utimes .quad sys_osf_utimes
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 140 */ .quad alpha_ni_syscall /* 140 */
.quad sys_getpeername .quad sys_getpeername
...@@ -172,16 +172,16 @@ sys_call_table: ...@@ -172,16 +172,16 @@ sys_call_table:
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 155 */ .quad alpha_ni_syscall /* 155 */
.quad osf_sigaction .quad sys_osf_sigaction
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad osf_getdirentries .quad sys_osf_getdirentries
.quad osf_statfs /* 160 */ .quad sys_osf_statfs /* 160 */
.quad osf_fstatfs .quad sys_osf_fstatfs
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad osf_getdomainname /* 165 */ .quad sys_osf_getdomainname /* 165 */
.quad sys_setdomainname .quad sys_setdomainname
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
...@@ -224,7 +224,7 @@ sys_call_table: ...@@ -224,7 +224,7 @@ sys_call_table:
.quad sys_semctl .quad sys_semctl
.quad sys_semget /* 205 */ .quad sys_semget /* 205 */
.quad sys_semop .quad sys_semop
.quad osf_utsname .quad sys_osf_utsname
.quad sys_lchown .quad sys_lchown
.quad sys_shmat .quad sys_shmat
.quad sys_shmctl /* 210 */ .quad sys_shmctl /* 210 */
...@@ -258,23 +258,23 @@ sys_call_table: ...@@ -258,23 +258,23 @@ sys_call_table:
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 240 */ .quad alpha_ni_syscall /* 240 */
.quad osf_sysinfo .quad sys_osf_sysinfo
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad osf_proplist_syscall .quad sys_osf_proplist_syscall
.quad alpha_ni_syscall /* 245 */ .quad alpha_ni_syscall /* 245 */
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 250 */ .quad alpha_ni_syscall /* 250 */
.quad osf_usleep_thread .quad sys_osf_usleep_thread
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad sys_sysfs .quad sys_sysfs
.quad alpha_ni_syscall /* 255 */ .quad alpha_ni_syscall /* 255 */
.quad osf_getsysinfo .quad sys_osf_getsysinfo
.quad osf_setsysinfo .quad sys_osf_setsysinfo
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall .quad alpha_ni_syscall
.quad alpha_ni_syscall /* 260 */ .quad alpha_ni_syscall /* 260 */
......
...@@ -108,9 +108,14 @@ struct old_linux_dirent; ...@@ -108,9 +108,14 @@ struct old_linux_dirent;
asm ("\t.globl " #alias "\n\t.set " #alias ", " #name "\n" \ asm ("\t.globl " #alias "\n\t.set " #alias ", " #name "\n" \
"\t.globl ." #alias "\n\t.set ." #alias ", ." #name) "\t.globl ." #alias "\n\t.set ." #alias ", ." #name)
#else #else
#ifdef CONFIG_ALPHA
#define SYSCALL_ALIAS(alias, name) \
asm ( #alias " = " #name "\n\t.globl " #alias)
#else
#define SYSCALL_ALIAS(alias, name) \ #define SYSCALL_ALIAS(alias, name) \
asm ("\t.globl " #alias "\n\t.set " #alias ", " #name) asm ("\t.globl " #alias "\n\t.set " #alias ", " #name)
#endif #endif
#endif
#ifdef CONFIG_HAVE_SYSCALL_WRAPPERS #ifdef CONFIG_HAVE_SYSCALL_WRAPPERS
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment