diff options
| author | Ingo Molnar <mingo@elte.hu> | 2009-01-31 11:32:31 -0500 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2009-02-05 16:30:01 -0500 |
| commit | 9d45cf9e36bf9bcf16df6e1cbf049807c8402823 (patch) | |
| tree | 2118a16701418af10d215d2174df7ee0a5cbe6bd /arch/alpha/kernel | |
| parent | a146649bc19d5eba4f5bfac6720c5f252d517a71 (diff) | |
| parent | 0cd5c3c80a0ebd68c08312fa7d8c13149cc61c4c (diff) | |
Merge branch 'x86/urgent' into x86/apic
Conflicts:
arch/x86/mach-default/setup.c
Semantic merge:
arch/x86/kernel/irqinit_32.c
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/alpha/kernel')
| -rw-r--r-- | arch/alpha/kernel/entry.S | 2 | ||||
| -rw-r--r-- | arch/alpha/kernel/osf_sys.c | 113 | ||||
| -rw-r--r-- | arch/alpha/kernel/pci-noop.c | 3 | ||||
| -rw-r--r-- | arch/alpha/kernel/signal.c | 18 | ||||
| -rw-r--r-- | arch/alpha/kernel/smp.c | 3 | ||||
| -rw-r--r-- | arch/alpha/kernel/systbls.S | 52 |
6 files changed, 90 insertions, 101 deletions
diff --git a/arch/alpha/kernel/entry.S b/arch/alpha/kernel/entry.S index aa2e50cf9857..e4a54b615894 100644 --- a/arch/alpha/kernel/entry.S +++ b/arch/alpha/kernel/entry.S | |||
| @@ -933,7 +933,7 @@ sys_execve: | |||
| 933 | osf_sigprocmask: | 933 | osf_sigprocmask: |
| 934 | .prologue 0 | 934 | .prologue 0 |
| 935 | mov $sp, $18 | 935 | mov $sp, $18 |
| 936 | jmp $31, do_osf_sigprocmask | 936 | jmp $31, sys_osf_sigprocmask |
| 937 | .end osf_sigprocmask | 937 | .end osf_sigprocmask |
| 938 | 938 | ||
| 939 | .align 4 | 939 | .align 4 |
diff --git a/arch/alpha/kernel/osf_sys.c b/arch/alpha/kernel/osf_sys.c index 18a3ea1aac51..ae41f097864b 100644 --- a/arch/alpha/kernel/osf_sys.c +++ b/arch/alpha/kernel/osf_sys.c | |||
| @@ -54,8 +54,7 @@ extern int do_pipe(int *); | |||
| 54 | * identical to OSF as we don't return 0 on success, but doing otherwise | 54 | * identical to OSF as we don't return 0 on success, but doing otherwise |
| 55 | * would require changes to libc. Hopefully this is good enough. | 55 | * would require changes to libc. Hopefully this is good enough. |
| 56 | */ | 56 | */ |
| 57 | asmlinkage unsigned long | 57 | SYSCALL_DEFINE1(osf_brk, unsigned long, brk) |
| 58 | osf_brk(unsigned long brk) | ||
| 59 | { | 58 | { |
| 60 | unsigned long retval = sys_brk(brk); | 59 | unsigned long retval = sys_brk(brk); |
| 61 | if (brk && brk != retval) | 60 | if (brk && brk != retval) |
| @@ -66,9 +65,9 @@ osf_brk(unsigned long brk) | |||
| 66 | /* | 65 | /* |
| 67 | * This is pure guess-work.. | 66 | * This is pure guess-work.. |
| 68 | */ | 67 | */ |
| 69 | asmlinkage int | 68 | SYSCALL_DEFINE4(osf_set_program_attributes, unsigned long, text_start, |
| 70 | osf_set_program_attributes(unsigned long text_start, unsigned long text_len, | 69 | unsigned long, text_len, unsigned long, bss_start, |
| 71 | unsigned long bss_start, unsigned long bss_len) | 70 | unsigned long, bss_len) |
| 72 | { | 71 | { |
| 73 | struct mm_struct *mm; | 72 | struct mm_struct *mm; |
| 74 | 73 | ||
| @@ -146,9 +145,9 @@ Efault: | |||
| 146 | return -EFAULT; | 145 | return -EFAULT; |
| 147 | } | 146 | } |
| 148 | 147 | ||
| 149 | asmlinkage int | 148 | SYSCALL_DEFINE4(osf_getdirentries, unsigned int, fd, |
| 150 | osf_getdirentries(unsigned int fd, struct osf_dirent __user *dirent, | 149 | struct osf_dirent __user *, dirent, unsigned int, count, |
| 151 | unsigned int count, long __user *basep) | 150 | long __user *, basep) |
| 152 | { | 151 | { |
| 153 | int error; | 152 | int error; |
| 154 | struct file *file; | 153 | struct file *file; |
| @@ -177,9 +176,9 @@ osf_getdirentries(unsigned int fd, struct osf_dirent __user *dirent, | |||
| 177 | 176 | ||
| 178 | #undef NAME_OFFSET | 177 | #undef NAME_OFFSET |
| 179 | 178 | ||
| 180 | asmlinkage unsigned long | 179 | SYSCALL_DEFINE6(osf_mmap, unsigned long, addr, unsigned long, len, |
| 181 | osf_mmap(unsigned long addr, unsigned long len, unsigned long prot, | 180 | unsigned long, prot, unsigned long, flags, unsigned long, fd, |
| 182 | unsigned long flags, unsigned long fd, unsigned long off) | 181 | unsigned long, off) |
| 183 | { | 182 | { |
| 184 | struct file *file = NULL; | 183 | struct file *file = NULL; |
| 185 | unsigned long ret = -EBADF; | 184 | unsigned long ret = -EBADF; |
| @@ -254,8 +253,8 @@ do_osf_statfs(struct dentry * dentry, struct osf_statfs __user *buffer, | |||
| 254 | return error; | 253 | return error; |
| 255 | } | 254 | } |
| 256 | 255 | ||
| 257 | asmlinkage int | 256 | SYSCALL_DEFINE3(osf_statfs, char __user *, pathname, |
| 258 | osf_statfs(char __user *pathname, struct osf_statfs __user *buffer, unsigned long bufsiz) | 257 | struct osf_statfs __user *, buffer, unsigned long, bufsiz) |
| 259 | { | 258 | { |
| 260 | struct path path; | 259 | struct path path; |
| 261 | int retval; | 260 | int retval; |
| @@ -268,8 +267,8 @@ osf_statfs(char __user *pathname, struct osf_statfs __user *buffer, unsigned lon | |||
| 268 | return retval; | 267 | return retval; |
| 269 | } | 268 | } |
| 270 | 269 | ||
| 271 | asmlinkage int | 270 | SYSCALL_DEFINE3(osf_fstatfs, unsigned long, fd, |
| 272 | osf_fstatfs(unsigned long fd, struct osf_statfs __user *buffer, unsigned long bufsiz) | 271 | struct osf_statfs __user *, buffer, unsigned long, bufsiz) |
| 273 | { | 272 | { |
| 274 | struct file *file; | 273 | struct file *file; |
| 275 | int retval; | 274 | int retval; |
| @@ -368,8 +367,8 @@ osf_procfs_mount(char *dirname, struct procfs_args __user *args, int flags) | |||
| 368 | return do_mount("", dirname, "proc", flags, NULL); | 367 | return do_mount("", dirname, "proc", flags, NULL); |
| 369 | } | 368 | } |
| 370 | 369 | ||
| 371 | asmlinkage int | 370 | SYSCALL_DEFINE4(osf_mount, unsigned long, typenr, char __user *, path, |
| 372 | osf_mount(unsigned long typenr, char __user *path, int flag, void __user *data) | 371 | int, flag, void __user *, data) |
| 373 | { | 372 | { |
| 374 | int retval = -EINVAL; | 373 | int retval = -EINVAL; |
| 375 | char *name; | 374 | char *name; |
| @@ -399,8 +398,7 @@ osf_mount(unsigned long typenr, char __user *path, int flag, void __user *data) | |||
| 399 | return retval; | 398 | return retval; |
| 400 | } | 399 | } |
| 401 | 400 | ||
| 402 | asmlinkage int | 401 | SYSCALL_DEFINE1(osf_utsname, char __user *, name) |
| 403 | osf_utsname(char __user *name) | ||
| 404 | { | 402 | { |
| 405 | int error; | 403 | int error; |
| 406 | 404 | ||
| @@ -423,14 +421,12 @@ osf_utsname(char __user *name) | |||
| 423 | return error; | 421 | return error; |
| 424 | } | 422 | } |
| 425 | 423 | ||
| 426 | asmlinkage unsigned long | 424 | SYSCALL_DEFINE0(getpagesize) |
| 427 | sys_getpagesize(void) | ||
| 428 | { | 425 | { |
| 429 | return PAGE_SIZE; | 426 | return PAGE_SIZE; |
| 430 | } | 427 | } |
| 431 | 428 | ||
| 432 | asmlinkage unsigned long | 429 | SYSCALL_DEFINE0(getdtablesize) |
| 433 | sys_getdtablesize(void) | ||
| 434 | { | 430 | { |
| 435 | return sysctl_nr_open; | 431 | return sysctl_nr_open; |
| 436 | } | 432 | } |
| @@ -438,8 +434,7 @@ sys_getdtablesize(void) | |||
| 438 | /* | 434 | /* |
| 439 | * For compatibility with OSF/1 only. Use utsname(2) instead. | 435 | * For compatibility with OSF/1 only. Use utsname(2) instead. |
| 440 | */ | 436 | */ |
| 441 | asmlinkage int | 437 | SYSCALL_DEFINE2(osf_getdomainname, char __user *, name, int, namelen) |
| 442 | osf_getdomainname(char __user *name, int namelen) | ||
| 443 | { | 438 | { |
| 444 | unsigned len; | 439 | unsigned len; |
| 445 | int i; | 440 | int i; |
| @@ -527,8 +522,8 @@ enum pl_code { | |||
| 527 | PL_DEL = 5, PL_FDEL = 6 | 522 | PL_DEL = 5, PL_FDEL = 6 |
| 528 | }; | 523 | }; |
| 529 | 524 | ||
| 530 | asmlinkage long | 525 | SYSCALL_DEFINE2(osf_proplist_syscall, enum pl_code, code, |
| 531 | osf_proplist_syscall(enum pl_code code, union pl_args __user *args) | 526 | union pl_args __user *, args) |
| 532 | { | 527 | { |
| 533 | long error; | 528 | long error; |
| 534 | int __user *min_buf_size_ptr; | 529 | int __user *min_buf_size_ptr; |
| @@ -567,8 +562,8 @@ osf_proplist_syscall(enum pl_code code, union pl_args __user *args) | |||
| 567 | return error; | 562 | return error; |
| 568 | } | 563 | } |
| 569 | 564 | ||
| 570 | asmlinkage int | 565 | SYSCALL_DEFINE2(osf_sigstack, struct sigstack __user *, uss, |
| 571 | osf_sigstack(struct sigstack __user *uss, struct sigstack __user *uoss) | 566 | struct sigstack __user *, uoss) |
| 572 | { | 567 | { |
| 573 | unsigned long usp = rdusp(); | 568 | unsigned long usp = rdusp(); |
| 574 | unsigned long oss_sp = current->sas_ss_sp + current->sas_ss_size; | 569 | 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 | return error; | 603 | return error; |
| 609 | } | 604 | } |
| 610 | 605 | ||
| 611 | asmlinkage long | 606 | SYSCALL_DEFINE3(osf_sysinfo, int, command, char __user *, buf, long, count) |
| 612 | osf_sysinfo(int command, char __user *buf, long count) | ||
| 613 | { | 607 | { |
| 614 | char *sysinfo_table[] = { | 608 | char *sysinfo_table[] = { |
| 615 | utsname()->sysname, | 609 | utsname()->sysname, |
| @@ -647,9 +641,8 @@ osf_sysinfo(int command, char __user *buf, long count) | |||
| 647 | return err; | 641 | return err; |
| 648 | } | 642 | } |
| 649 | 643 | ||
| 650 | asmlinkage unsigned long | 644 | SYSCALL_DEFINE5(osf_getsysinfo, unsigned long, op, void __user *, buffer, |
| 651 | osf_getsysinfo(unsigned long op, void __user *buffer, unsigned long nbytes, | 645 | unsigned long, nbytes, int __user *, start, void __user *, arg) |
| 652 | int __user *start, void __user *arg) | ||
| 653 | { | 646 | { |
| 654 | unsigned long w; | 647 | unsigned long w; |
| 655 | struct percpu_struct *cpu; | 648 | struct percpu_struct *cpu; |
| @@ -705,9 +698,8 @@ osf_getsysinfo(unsigned long op, void __user *buffer, unsigned long nbytes, | |||
| 705 | return -EOPNOTSUPP; | 698 | return -EOPNOTSUPP; |
| 706 | } | 699 | } |
| 707 | 700 | ||
| 708 | asmlinkage unsigned long | 701 | SYSCALL_DEFINE5(osf_setsysinfo, unsigned long, op, void __user *, buffer, |
| 709 | osf_setsysinfo(unsigned long op, void __user *buffer, unsigned long nbytes, | 702 | unsigned long, nbytes, int __user *, start, void __user *, arg) |
| 710 | int __user *start, void __user *arg) | ||
| 711 | { | 703 | { |
| 712 | switch (op) { | 704 | switch (op) { |
| 713 | case SSI_IEEE_FP_CONTROL: { | 705 | case SSI_IEEE_FP_CONTROL: { |
| @@ -880,8 +872,8 @@ jiffies_to_timeval32(unsigned long jiffies, struct timeval32 *value) | |||
| 880 | value->tv_sec = jiffies / HZ; | 872 | value->tv_sec = jiffies / HZ; |
| 881 | } | 873 | } |
| 882 | 874 | ||
| 883 | asmlinkage int | 875 | SYSCALL_DEFINE2(osf_gettimeofday, struct timeval32 __user *, tv, |
| 884 | osf_gettimeofday(struct timeval32 __user *tv, struct timezone __user *tz) | 876 | struct timezone __user *, tz) |
| 885 | { | 877 | { |
| 886 | if (tv) { | 878 | if (tv) { |
| 887 | struct timeval ktv; | 879 | struct timeval ktv; |
| @@ -896,8 +888,8 @@ osf_gettimeofday(struct timeval32 __user *tv, struct timezone __user *tz) | |||
| 896 | return 0; | 888 | return 0; |
| 897 | } | 889 | } |
| 898 | 890 | ||
| 899 | asmlinkage int | 891 | SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv, |
| 900 | osf_settimeofday(struct timeval32 __user *tv, struct timezone __user *tz) | 892 | struct timezone __user *, tz) |
| 901 | { | 893 | { |
| 902 | struct timespec kts; | 894 | struct timespec kts; |
| 903 | struct timezone ktz; | 895 | struct timezone ktz; |
| @@ -916,8 +908,7 @@ osf_settimeofday(struct timeval32 __user *tv, struct timezone __user *tz) | |||
| 916 | return do_sys_settimeofday(tv ? &kts : NULL, tz ? &ktz : NULL); | 908 | return do_sys_settimeofday(tv ? &kts : NULL, tz ? &ktz : NULL); |
| 917 | } | 909 | } |
| 918 | 910 | ||
| 919 | asmlinkage int | 911 | SYSCALL_DEFINE2(osf_getitimer, int, which, struct itimerval32 __user *, it) |
| 920 | osf_getitimer(int which, struct itimerval32 __user *it) | ||
| 921 | { | 912 | { |
| 922 | struct itimerval kit; | 913 | struct itimerval kit; |
| 923 | int error; | 914 | int error; |
| @@ -929,8 +920,8 @@ osf_getitimer(int which, struct itimerval32 __user *it) | |||
| 929 | return error; | 920 | return error; |
| 930 | } | 921 | } |
| 931 | 922 | ||
| 932 | asmlinkage int | 923 | SYSCALL_DEFINE3(osf_setitimer, int, which, struct itimerval32 __user *, in, |
| 933 | osf_setitimer(int which, struct itimerval32 __user *in, struct itimerval32 __user *out) | 924 | struct itimerval32 __user *, out) |
| 934 | { | 925 | { |
| 935 | struct itimerval kin, kout; | 926 | struct itimerval kin, kout; |
| 936 | int error; | 927 | int error; |
| @@ -952,8 +943,8 @@ osf_setitimer(int which, struct itimerval32 __user *in, struct itimerval32 __use | |||
| 952 | 943 | ||
| 953 | } | 944 | } |
| 954 | 945 | ||
| 955 | asmlinkage int | 946 | SYSCALL_DEFINE2(osf_utimes, char __user *, filename, |
| 956 | osf_utimes(char __user *filename, struct timeval32 __user *tvs) | 947 | struct timeval32 __user *, tvs) |
| 957 | { | 948 | { |
| 958 | struct timespec tv[2]; | 949 | struct timespec tv[2]; |
| 959 | 950 | ||
| @@ -979,9 +970,8 @@ osf_utimes(char __user *filename, struct timeval32 __user *tvs) | |||
| 979 | #define MAX_SELECT_SECONDS \ | 970 | #define MAX_SELECT_SECONDS \ |
| 980 | ((unsigned long) (MAX_SCHEDULE_TIMEOUT / HZ)-1) | 971 | ((unsigned long) (MAX_SCHEDULE_TIMEOUT / HZ)-1) |
| 981 | 972 | ||
| 982 | asmlinkage int | 973 | SYSCALL_DEFINE5(osf_select, int, n, fd_set __user *, inp, fd_set __user *, outp, |
| 983 | osf_select(int n, fd_set __user *inp, fd_set __user *outp, fd_set __user *exp, | 974 | fd_set __user *, exp, struct timeval32 __user *, tvp) |
| 984 | struct timeval32 __user *tvp) | ||
| 985 | { | 975 | { |
| 986 | struct timespec end_time, *to = NULL; | 976 | struct timespec end_time, *to = NULL; |
| 987 | if (tvp) { | 977 | if (tvp) { |
| @@ -1026,8 +1016,7 @@ struct rusage32 { | |||
| 1026 | long ru_nivcsw; /* involuntary " */ | 1016 | long ru_nivcsw; /* involuntary " */ |
| 1027 | }; | 1017 | }; |
| 1028 | 1018 | ||
| 1029 | asmlinkage int | 1019 | SYSCALL_DEFINE2(osf_getrusage, int, who, struct rusage32 __user *, ru) |
| 1030 | osf_getrusage(int who, struct rusage32 __user *ru) | ||
| 1031 | { | 1020 | { |
| 1032 | struct rusage32 r; | 1021 | struct rusage32 r; |
| 1033 | 1022 | ||
| @@ -1053,9 +1042,8 @@ osf_getrusage(int who, struct rusage32 __user *ru) | |||
| 1053 | return copy_to_user(ru, &r, sizeof(r)) ? -EFAULT : 0; | 1042 | return copy_to_user(ru, &r, sizeof(r)) ? -EFAULT : 0; |
| 1054 | } | 1043 | } |
| 1055 | 1044 | ||
| 1056 | asmlinkage long | 1045 | SYSCALL_DEFINE4(osf_wait4, pid_t, pid, int __user *, ustatus, int, options, |
| 1057 | osf_wait4(pid_t pid, int __user *ustatus, int options, | 1046 | struct rusage32 __user *, ur) |
| 1058 | struct rusage32 __user *ur) | ||
| 1059 | { | 1047 | { |
| 1060 | struct rusage r; | 1048 | struct rusage r; |
| 1061 | long ret, err; | 1049 | long ret, err; |
| @@ -1101,8 +1089,8 @@ osf_wait4(pid_t pid, int __user *ustatus, int options, | |||
| 1101 | * seems to be a timeval pointer, and I suspect the second | 1089 | * seems to be a timeval pointer, and I suspect the second |
| 1102 | * one is the time remaining.. Ho humm.. No documentation. | 1090 | * one is the time remaining.. Ho humm.. No documentation. |
| 1103 | */ | 1091 | */ |
| 1104 | asmlinkage int | 1092 | SYSCALL_DEFINE2(osf_usleep_thread, struct timeval32 __user *, sleep, |
| 1105 | osf_usleep_thread(struct timeval32 __user *sleep, struct timeval32 __user *remain) | 1093 | struct timeval32 __user *, remain) |
| 1106 | { | 1094 | { |
| 1107 | struct timeval tmp; | 1095 | struct timeval tmp; |
| 1108 | unsigned long ticks; | 1096 | unsigned long ticks; |
| @@ -1155,8 +1143,7 @@ struct timex32 { | |||
| 1155 | int :32; int :32; int :32; int :32; | 1143 | int :32; int :32; int :32; int :32; |
| 1156 | }; | 1144 | }; |
| 1157 | 1145 | ||
| 1158 | asmlinkage int | 1146 | SYSCALL_DEFINE1(old_adjtimex, struct timex32 __user *, txc_p) |
| 1159 | sys_old_adjtimex(struct timex32 __user *txc_p) | ||
| 1160 | { | 1147 | { |
| 1161 | struct timex txc; | 1148 | struct timex txc; |
| 1162 | int ret; | 1149 | int ret; |
| @@ -1267,8 +1254,8 @@ osf_fix_iov_len(const struct iovec __user *iov, unsigned long count) | |||
| 1267 | return 0; | 1254 | return 0; |
| 1268 | } | 1255 | } |
| 1269 | 1256 | ||
| 1270 | asmlinkage ssize_t | 1257 | SYSCALL_DEFINE3(osf_readv, unsigned long, fd, |
| 1271 | osf_readv(unsigned long fd, const struct iovec __user * vector, unsigned long count) | 1258 | const struct iovec __user *, vector, unsigned long, count) |
| 1272 | { | 1259 | { |
| 1273 | if (unlikely(personality(current->personality) == PER_OSF4)) | 1260 | if (unlikely(personality(current->personality) == PER_OSF4)) |
| 1274 | if (osf_fix_iov_len(vector, count)) | 1261 | 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 | return sys_readv(fd, vector, count); | 1263 | return sys_readv(fd, vector, count); |
| 1277 | } | 1264 | } |
| 1278 | 1265 | ||
| 1279 | asmlinkage ssize_t | 1266 | SYSCALL_DEFINE3(osf_writev, unsigned long, fd, |
| 1280 | osf_writev(unsigned long fd, const struct iovec __user * vector, unsigned long count) | 1267 | const struct iovec __user *, vector, unsigned long, count) |
| 1281 | { | 1268 | { |
| 1282 | if (unlikely(personality(current->personality) == PER_OSF4)) | 1269 | if (unlikely(personality(current->personality) == PER_OSF4)) |
| 1283 | if (osf_fix_iov_len(vector, count)) | 1270 | if (osf_fix_iov_len(vector, count)) |
diff --git a/arch/alpha/kernel/pci-noop.c b/arch/alpha/kernel/pci-noop.c index 8ac08311f5a5..c19a376520f4 100644 --- a/arch/alpha/kernel/pci-noop.c +++ b/arch/alpha/kernel/pci-noop.c | |||
| @@ -109,7 +109,8 @@ sys_pciconfig_write(unsigned long bus, unsigned long dfn, | |||
| 109 | /* Stubs for the routines in pci_iommu.c: */ | 109 | /* Stubs for the routines in pci_iommu.c: */ |
| 110 | 110 | ||
| 111 | void * | 111 | void * |
| 112 | pci_alloc_consistent(struct pci_dev *pdev, size_t size, dma_addr_t *dma_addrp) | 112 | __pci_alloc_consistent(struct pci_dev *pdev, size_t size, |
| 113 | dma_addr_t *dma_addrp, gfp_t gfp) | ||
| 113 | { | 114 | { |
| 114 | return NULL; | 115 | return NULL; |
| 115 | } | 116 | } |
diff --git a/arch/alpha/kernel/signal.c b/arch/alpha/kernel/signal.c index 410af4f3140e..df65eaa84c4c 100644 --- a/arch/alpha/kernel/signal.c +++ b/arch/alpha/kernel/signal.c | |||
| @@ -19,6 +19,7 @@ | |||
| 19 | #include <linux/tty.h> | 19 | #include <linux/tty.h> |
| 20 | #include <linux/binfmts.h> | 20 | #include <linux/binfmts.h> |
| 21 | #include <linux/bitops.h> | 21 | #include <linux/bitops.h> |
| 22 | #include <linux/syscalls.h> | ||
| 22 | 23 | ||
| 23 | #include <asm/uaccess.h> | 24 | #include <asm/uaccess.h> |
| 24 | #include <asm/sigcontext.h> | 25 | #include <asm/sigcontext.h> |
| @@ -51,8 +52,8 @@ static void do_signal(struct pt_regs *, struct switch_stack *, | |||
| 51 | * Note that we don't need to acquire the kernel lock for SMP | 52 | * Note that we don't need to acquire the kernel lock for SMP |
| 52 | * operation, as all of this is local to this thread. | 53 | * operation, as all of this is local to this thread. |
| 53 | */ | 54 | */ |
| 54 | asmlinkage unsigned long | 55 | SYSCALL_DEFINE3(osf_sigprocmask, int, how, unsigned long, newmask, |
| 55 | do_osf_sigprocmask(int how, unsigned long newmask, struct pt_regs *regs) | 56 | struct pt_regs *, regs) |
| 56 | { | 57 | { |
| 57 | unsigned long oldmask = -EINVAL; | 58 | unsigned long oldmask = -EINVAL; |
| 58 | 59 | ||
| @@ -81,9 +82,9 @@ do_osf_sigprocmask(int how, unsigned long newmask, struct pt_regs *regs) | |||
| 81 | return oldmask; | 82 | return oldmask; |
| 82 | } | 83 | } |
| 83 | 84 | ||
| 84 | asmlinkage int | 85 | SYSCALL_DEFINE3(osf_sigaction, int, sig, |
| 85 | osf_sigaction(int sig, const struct osf_sigaction __user *act, | 86 | const struct osf_sigaction __user *, act, |
| 86 | struct osf_sigaction __user *oact) | 87 | struct osf_sigaction __user *, oact) |
| 87 | { | 88 | { |
| 88 | struct k_sigaction new_ka, old_ka; | 89 | struct k_sigaction new_ka, old_ka; |
| 89 | int ret; | 90 | int ret; |
| @@ -112,10 +113,9 @@ osf_sigaction(int sig, const struct osf_sigaction __user *act, | |||
| 112 | return ret; | 113 | return ret; |
| 113 | } | 114 | } |
| 114 | 115 | ||
| 115 | asmlinkage long | 116 | SYSCALL_DEFINE5(rt_sigaction, int, sig, const struct sigaction __user *, act, |
| 116 | sys_rt_sigaction(int sig, const struct sigaction __user *act, | 117 | struct sigaction __user *, oact, |
| 117 | struct sigaction __user *oact, | 118 | size_t, sigsetsize, void __user *, restorer) |
| 118 | size_t sigsetsize, void __user *restorer) | ||
| 119 | { | 119 | { |
| 120 | struct k_sigaction new_ka, old_ka; | 120 | struct k_sigaction new_ka, old_ka; |
| 121 | int ret; | 121 | int ret; |
diff --git a/arch/alpha/kernel/smp.c b/arch/alpha/kernel/smp.c index d953e510f68d..00f1dc3dfd5f 100644 --- a/arch/alpha/kernel/smp.c +++ b/arch/alpha/kernel/smp.c | |||
| @@ -120,8 +120,9 @@ void __cpuinit | |||
| 120 | smp_callin(void) | 120 | smp_callin(void) |
| 121 | { | 121 | { |
| 122 | int cpuid = hard_smp_processor_id(); | 122 | int cpuid = hard_smp_processor_id(); |
| 123 | cpumask_t mask = cpu_online_map; | ||
| 123 | 124 | ||
| 124 | if (cpu_test_and_set(cpuid, cpu_online_map)) { | 125 | if (cpu_test_and_set(cpuid, mask)) { |
| 125 | printk("??, cpu 0x%x already present??\n", cpuid); | 126 | printk("??, cpu 0x%x already present??\n", cpuid); |
| 126 | BUG(); | 127 | BUG(); |
| 127 | } | 128 | } |
diff --git a/arch/alpha/kernel/systbls.S b/arch/alpha/kernel/systbls.S index 9d9e3a98bb95..95c9aef1c106 100644 --- a/arch/alpha/kernel/systbls.S +++ b/arch/alpha/kernel/systbls.S | |||
| @@ -17,7 +17,7 @@ sys_call_table: | |||
| 17 | .quad sys_write | 17 | .quad sys_write |
| 18 | .quad alpha_ni_syscall /* 5 */ | 18 | .quad alpha_ni_syscall /* 5 */ |
| 19 | .quad sys_close | 19 | .quad sys_close |
| 20 | .quad osf_wait4 | 20 | .quad sys_osf_wait4 |
| 21 | .quad alpha_ni_syscall | 21 | .quad alpha_ni_syscall |
| 22 | .quad sys_link | 22 | .quad sys_link |
| 23 | .quad sys_unlink /* 10 */ | 23 | .quad sys_unlink /* 10 */ |
| @@ -27,11 +27,11 @@ sys_call_table: | |||
| 27 | .quad sys_mknod | 27 | .quad sys_mknod |
| 28 | .quad sys_chmod /* 15 */ | 28 | .quad sys_chmod /* 15 */ |
| 29 | .quad sys_chown | 29 | .quad sys_chown |
| 30 | .quad osf_brk | 30 | .quad sys_osf_brk |
| 31 | .quad alpha_ni_syscall | 31 | .quad alpha_ni_syscall |
| 32 | .quad sys_lseek | 32 | .quad sys_lseek |
| 33 | .quad sys_getxpid /* 20 */ | 33 | .quad sys_getxpid /* 20 */ |
| 34 | .quad osf_mount | 34 | .quad sys_osf_mount |
| 35 | .quad sys_umount | 35 | .quad sys_umount |
| 36 | .quad sys_setuid | 36 | .quad sys_setuid |
| 37 | .quad sys_getxuid | 37 | .quad sys_getxuid |
| @@ -53,7 +53,7 @@ sys_call_table: | |||
| 53 | .quad alpha_ni_syscall /* 40 */ | 53 | .quad alpha_ni_syscall /* 40 */ |
| 54 | .quad sys_dup | 54 | .quad sys_dup |
| 55 | .quad sys_alpha_pipe | 55 | .quad sys_alpha_pipe |
| 56 | .quad osf_set_program_attributes | 56 | .quad sys_osf_set_program_attributes |
| 57 | .quad alpha_ni_syscall | 57 | .quad alpha_ni_syscall |
| 58 | .quad sys_open /* 45 */ | 58 | .quad sys_open /* 45 */ |
| 59 | .quad alpha_ni_syscall | 59 | .quad alpha_ni_syscall |
| @@ -81,7 +81,7 @@ sys_call_table: | |||
| 81 | .quad sys_newlstat | 81 | .quad sys_newlstat |
| 82 | .quad alpha_ni_syscall | 82 | .quad alpha_ni_syscall |
| 83 | .quad alpha_ni_syscall /* 70 */ | 83 | .quad alpha_ni_syscall /* 70 */ |
| 84 | .quad osf_mmap | 84 | .quad sys_osf_mmap |
| 85 | .quad alpha_ni_syscall | 85 | .quad alpha_ni_syscall |
| 86 | .quad sys_munmap | 86 | .quad sys_munmap |
| 87 | .quad sys_mprotect | 87 | .quad sys_mprotect |
| @@ -94,17 +94,17 @@ sys_call_table: | |||
| 94 | .quad sys_setgroups /* 80 */ | 94 | .quad sys_setgroups /* 80 */ |
| 95 | .quad alpha_ni_syscall | 95 | .quad alpha_ni_syscall |
| 96 | .quad sys_setpgid | 96 | .quad sys_setpgid |
| 97 | .quad osf_setitimer | 97 | .quad sys_osf_setitimer |
| 98 | .quad alpha_ni_syscall | 98 | .quad alpha_ni_syscall |
| 99 | .quad alpha_ni_syscall /* 85 */ | 99 | .quad alpha_ni_syscall /* 85 */ |
| 100 | .quad osf_getitimer | 100 | .quad sys_osf_getitimer |
| 101 | .quad sys_gethostname | 101 | .quad sys_gethostname |
| 102 | .quad sys_sethostname | 102 | .quad sys_sethostname |
| 103 | .quad sys_getdtablesize | 103 | .quad sys_getdtablesize |
| 104 | .quad sys_dup2 /* 90 */ | 104 | .quad sys_dup2 /* 90 */ |
| 105 | .quad sys_newfstat | 105 | .quad sys_newfstat |
| 106 | .quad sys_fcntl | 106 | .quad sys_fcntl |
| 107 | .quad osf_select | 107 | .quad sys_osf_select |
| 108 | .quad sys_poll | 108 | .quad sys_poll |
| 109 | .quad sys_fsync /* 95 */ | 109 | .quad sys_fsync /* 95 */ |
| 110 | .quad sys_setpriority | 110 | .quad sys_setpriority |
| @@ -123,22 +123,22 @@ sys_call_table: | |||
| 123 | .quad alpha_ni_syscall | 123 | .quad alpha_ni_syscall |
| 124 | .quad alpha_ni_syscall /* 110 */ | 124 | .quad alpha_ni_syscall /* 110 */ |
| 125 | .quad sys_sigsuspend | 125 | .quad sys_sigsuspend |
| 126 | .quad osf_sigstack | 126 | .quad sys_osf_sigstack |
| 127 | .quad sys_recvmsg | 127 | .quad sys_recvmsg |
| 128 | .quad sys_sendmsg | 128 | .quad sys_sendmsg |
| 129 | .quad alpha_ni_syscall /* 115 */ | 129 | .quad alpha_ni_syscall /* 115 */ |
| 130 | .quad osf_gettimeofday | 130 | .quad sys_osf_gettimeofday |
| 131 | .quad osf_getrusage | 131 | .quad sys_osf_getrusage |
| 132 | .quad sys_getsockopt | 132 | .quad sys_getsockopt |
| 133 | .quad alpha_ni_syscall | 133 | .quad alpha_ni_syscall |
| 134 | #ifdef CONFIG_OSF4_COMPAT | 134 | #ifdef CONFIG_OSF4_COMPAT |
| 135 | .quad osf_readv /* 120 */ | 135 | .quad sys_osf_readv /* 120 */ |
| 136 | .quad osf_writev | 136 | .quad sys_osf_writev |
| 137 | #else | 137 | #else |
| 138 | .quad sys_readv /* 120 */ | 138 | .quad sys_readv /* 120 */ |
| 139 | .quad sys_writev | 139 | .quad sys_writev |
| 140 | #endif | 140 | #endif |
| 141 | .quad osf_settimeofday | 141 | .quad sys_osf_settimeofday |
| 142 | .quad sys_fchown | 142 | .quad sys_fchown |
| 143 | .quad sys_fchmod | 143 | .quad sys_fchmod |
| 144 | .quad sys_recvfrom /* 125 */ | 144 | .quad sys_recvfrom /* 125 */ |
| @@ -154,7 +154,7 @@ sys_call_table: | |||
| 154 | .quad sys_socketpair /* 135 */ | 154 | .quad sys_socketpair /* 135 */ |
| 155 | .quad sys_mkdir | 155 | .quad sys_mkdir |
| 156 | .quad sys_rmdir | 156 | .quad sys_rmdir |
| 157 | .quad osf_utimes | 157 | .quad sys_osf_utimes |
| 158 | .quad alpha_ni_syscall | 158 | .quad alpha_ni_syscall |
| 159 | .quad alpha_ni_syscall /* 140 */ | 159 | .quad alpha_ni_syscall /* 140 */ |
| 160 | .quad sys_getpeername | 160 | .quad sys_getpeername |
| @@ -172,16 +172,16 @@ sys_call_table: | |||
| 172 | .quad alpha_ni_syscall | 172 | .quad alpha_ni_syscall |
| 173 | .quad alpha_ni_syscall | 173 | .quad alpha_ni_syscall |
| 174 | .quad alpha_ni_syscall /* 155 */ | 174 | .quad alpha_ni_syscall /* 155 */ |
| 175 | .quad osf_sigaction | 175 | .quad sys_osf_sigaction |
| 176 | .quad alpha_ni_syscall | 176 | .quad alpha_ni_syscall |
| 177 | .quad alpha_ni_syscall | 177 | .quad alpha_ni_syscall |
| 178 | .quad osf_getdirentries | 178 | .quad sys_osf_getdirentries |
| 179 | .quad osf_statfs /* 160 */ | 179 | .quad sys_osf_statfs /* 160 */ |
| 180 | .quad osf_fstatfs | 180 | .quad sys_osf_fstatfs |
| 181 | .quad alpha_ni_syscall | 181 | .quad alpha_ni_syscall |
| 182 | .quad alpha_ni_syscall | 182 | .quad alpha_ni_syscall |
| 183 | .quad alpha_ni_syscall | 183 | .quad alpha_ni_syscall |
| 184 | .quad osf_getdomainname /* 165 */ | 184 | .quad sys_osf_getdomainname /* 165 */ |
| 185 | .quad sys_setdomainname | 185 | .quad sys_setdomainname |
| 186 | .quad alpha_ni_syscall | 186 | .quad alpha_ni_syscall |
| 187 | .quad alpha_ni_syscall | 187 | .quad alpha_ni_syscall |
| @@ -224,7 +224,7 @@ sys_call_table: | |||
| 224 | .quad sys_semctl | 224 | .quad sys_semctl |
| 225 | .quad sys_semget /* 205 */ | 225 | .quad sys_semget /* 205 */ |
| 226 | .quad sys_semop | 226 | .quad sys_semop |
| 227 | .quad osf_utsname | 227 | .quad sys_osf_utsname |
| 228 | .quad sys_lchown | 228 | .quad sys_lchown |
| 229 | .quad sys_shmat | 229 | .quad sys_shmat |
| 230 | .quad sys_shmctl /* 210 */ | 230 | .quad sys_shmctl /* 210 */ |
| @@ -258,23 +258,23 @@ sys_call_table: | |||
| 258 | .quad alpha_ni_syscall | 258 | .quad alpha_ni_syscall |
| 259 | .quad alpha_ni_syscall | 259 | .quad alpha_ni_syscall |
| 260 | .quad alpha_ni_syscall /* 240 */ | 260 | .quad alpha_ni_syscall /* 240 */ |
| 261 | .quad osf_sysinfo | 261 | .quad sys_osf_sysinfo |
| 262 | .quad alpha_ni_syscall | 262 | .quad alpha_ni_syscall |
| 263 | .quad alpha_ni_syscall | 263 | .quad alpha_ni_syscall |
| 264 | .quad osf_proplist_syscall | 264 | .quad sys_osf_proplist_syscall |
| 265 | .quad alpha_ni_syscall /* 245 */ | 265 | .quad alpha_ni_syscall /* 245 */ |
| 266 | .quad alpha_ni_syscall | 266 | .quad alpha_ni_syscall |
| 267 | .quad alpha_ni_syscall | 267 | .quad alpha_ni_syscall |
| 268 | .quad alpha_ni_syscall | 268 | .quad alpha_ni_syscall |
| 269 | .quad alpha_ni_syscall | 269 | .quad alpha_ni_syscall |
| 270 | .quad alpha_ni_syscall /* 250 */ | 270 | .quad alpha_ni_syscall /* 250 */ |
| 271 | .quad osf_usleep_thread | 271 | .quad sys_osf_usleep_thread |
| 272 | .quad alpha_ni_syscall | 272 | .quad alpha_ni_syscall |
| 273 | .quad alpha_ni_syscall | 273 | .quad alpha_ni_syscall |
| 274 | .quad sys_sysfs | 274 | .quad sys_sysfs |
| 275 | .quad alpha_ni_syscall /* 255 */ | 275 | .quad alpha_ni_syscall /* 255 */ |
| 276 | .quad osf_getsysinfo | 276 | .quad sys_osf_getsysinfo |
| 277 | .quad osf_setsysinfo | 277 | .quad sys_osf_setsysinfo |
| 278 | .quad alpha_ni_syscall | 278 | .quad alpha_ni_syscall |
| 279 | .quad alpha_ni_syscall | 279 | .quad alpha_ni_syscall |
| 280 | .quad alpha_ni_syscall /* 260 */ | 280 | .quad alpha_ni_syscall /* 260 */ |
