]> err.no Git - linux-2.6/blobdiff - arch/sparc64/kernel/sys_sparc.c
tty: The big operations rework
[linux-2.6] / arch / sparc64 / kernel / sys_sparc.c
index 134d801579f92e5ce10a274e1de080b5702ca113..8d4761f15fa932cdede6dc4dc4336fdaa2b1cc88 100644 (file)
@@ -1,5 +1,4 @@
-/* $Id: sys_sparc.c,v 1.57 2002/02/09 19:49:30 davem Exp $
- * linux/arch/sparc64/kernel/sys_sparc.c
+/* linux/arch/sparc64/kernel/sys_sparc.c
  *
  * This file contains various random system calls that
  * have a non-standard calling sequence on the Linux/sparc
@@ -30,6 +29,9 @@
 #include <asm/perfctr.h>
 #include <asm/unistd.h>
 
+#include "entry.h"
+#include "systbls.h"
+
 /* #define DEBUG_UNIMP_SYSCALL */
 
 asmlinkage unsigned long sys_getpagesize(void)
@@ -445,14 +447,15 @@ asmlinkage long sys_ipc(unsigned int call, int first, unsigned long second,
                        goto out;
                case SEMTIMEDOP:
                        err = sys_semtimedop(first, ptr, (unsigned)second,
-                               (const struct timespec __user *) fifth);
+                               (const struct timespec __user *)
+                                            (unsigned long) fifth);
                        goto out;
                case SEMGET:
                        err = sys_semget(first, (int)second, (int)third);
                        goto out;
                case SEMCTL: {
-                       err = sys_semctl(first, third,
-                                        (int)second | IPC_64,
+                       err = sys_semctl(first, second,
+                                        (int)third | IPC_64,
                                         (union semun) ptr);
                        goto out;
                }
@@ -717,44 +720,6 @@ out:
        return err;
 }
 
-asmlinkage long solaris_syscall(struct pt_regs *regs)
-{
-       static int count;
-
-       regs->tpc = regs->tnpc;
-       regs->tnpc += 4;
-       if (test_thread_flag(TIF_32BIT)) {
-               regs->tpc &= 0xffffffff;
-               regs->tnpc &= 0xffffffff;
-       }
-       if (++count <= 5) {
-               printk ("For Solaris binary emulation you need solaris module loaded\n");
-               show_regs (regs);
-       }
-       send_sig(SIGSEGV, current, 1);
-
-       return -ENOSYS;
-}
-
-#ifndef CONFIG_SUNOS_EMUL
-asmlinkage long sunos_syscall(struct pt_regs *regs)
-{
-       static int count;
-
-       regs->tpc = regs->tnpc;
-       regs->tnpc += 4;
-       if (test_thread_flag(TIF_32BIT)) {
-               regs->tpc &= 0xffffffff;
-               regs->tnpc &= 0xffffffff;
-       }
-       if (++count <= 20)
-               printk ("SunOS binary emulation not compiled in\n");
-       force_sig(SIGSEGV, current);
-
-       return -ENOSYS;
-}
-#endif
-
 asmlinkage long sys_utrap_install(utrap_entry_t type,
                                  utrap_handler_t new_p,
                                  utrap_handler_t new_d,
@@ -788,7 +753,7 @@ asmlinkage long sys_utrap_install(utrap_entry_t type,
        } else {
                if ((utrap_handler_t)current_thread_info()->utraps[type] != new_p &&
                    current_thread_info()->utraps[0] > 1) {
-                       long *p = current_thread_info()->utraps;
+                       unsigned long *p = current_thread_info()->utraps;
 
                        current_thread_info()->utraps =
                                kmalloc((UT_TRAP_INSTRUCTION_31+1)*sizeof(long),
@@ -816,7 +781,8 @@ asmlinkage long sys_utrap_install(utrap_entry_t type,
        return 0;
 }
 
-long sparc_memory_ordering(unsigned long model, struct pt_regs *regs)
+asmlinkage long sparc_memory_ordering(unsigned long model,
+                                     struct pt_regs *regs)
 {
        if (model >= 3)
                return -EINVAL;