]> git.hungrycats.org Git - linux/commitdiff
[SPARC64]: compat select and futex need %o4 zero-extended.
authorDavid S. Miller <davem@nuts.davemloft.net>
Sat, 29 May 2004 05:27:54 +0000 (22:27 -0700)
committerDavid S. Miller <davem@nuts.davemloft.net>
Sat, 29 May 2004 05:27:54 +0000 (22:27 -0700)
arch/sparc64/kernel/sys32.S
arch/sparc64/kernel/systbls.S

index e94284ae9e6751dc2f4ca32c23cdcb49d86d8e2b..110d91aedb63605c6c2ffb1b0b897344a222bd6c 100644 (file)
@@ -6,6 +6,7 @@
  * Copyright (C) 1998 Jakub Jelinek   (jj@ultra.linux.cz)
  */
 
+#include <linux/config.h>
 #include <asm/errno.h>
 
 /* NOTE: call as jump breaks return stack, we have to avoid that */
@@ -79,6 +80,18 @@ sys32_mq_timedreceive:
        jmpl            %g1 + %lo(compat_sys_mq_timedreceive), %g0
         srl            %o4, 0, %o4
 
+       .globl          sys32_select
+sys32_select:
+       sethi           %hi(compat_sys_select), %g1
+       jmpl            %g1 + %lo(compat_sys_select), %g0
+        srl            %o4, 0, %o4
+
+       .globl          sys32_futex
+sys32_futex:
+       sethi           %hi(compat_sys_futex), %g1
+       jmpl            %g1 + %lo(compat_sys_futex), %g0
+        srl            %o4, 0, %o4
+
        .align          32
        .globl          sys32_socketcall
 sys32_socketcall:      /* %o0=call, %o1=args */
index 4ad0573f1ec65663394e60bc08d3fd8f0e4fe8e5..8529407e73f9c118af16df4b99435b03c78a6a9c 100644 (file)
@@ -37,7 +37,7 @@ sys_call_table32:
        .word sys_madvise, sys_vhangup, sys32_truncate64, sys_mincore, sys32_getgroups16
 /*80*/ .word sys32_setgroups16, sys_getpgrp, sys_setgroups, compat_sys_setitimer, sys32_ftruncate64
        .word sys_swapon, compat_sys_getitimer, sys_setuid, sys_sethostname, sys_setgid
-/*90*/ .word sys_dup2, sys_setfsuid, compat_sys_fcntl, compat_sys_select, sys_setfsgid
+/*90*/ .word sys_dup2, sys_setfsuid, compat_sys_fcntl, sys32_select, sys_setfsgid
        .word sys_fsync, sys_setpriority32, sys_nis_syscall, sys_nis_syscall, sys_nis_syscall
 /*100*/ .word sys_getpriority, sys32_rt_sigreturn, sys32_rt_sigaction, sys32_rt_sigprocmask, sys32_rt_sigpending
        .word sys32_rt_sigtimedwait, sys32_rt_sigqueueinfo, sys32_rt_sigsuspend, sys_setresuid, sys_getresuid
@@ -47,7 +47,7 @@ sys_call_table32:
        .word sys_nis_syscall, sys32_setreuid16, sys32_setregid16, sys_rename, sys_truncate
 /*130*/        .word sys_ftruncate, sys_flock, sys_lstat64, sys_nis_syscall, sys_nis_syscall
        .word sys_nis_syscall, sys_mkdir, sys_rmdir, sys32_utimes, sys_stat64
-/*140*/        .word sys32_sendfile64, sys_nis_syscall, compat_sys_futex, sys_gettid, compat_sys_getrlimit
+/*140*/        .word sys32_sendfile64, sys_nis_syscall, sys32_futex, sys_gettid, compat_sys_getrlimit
        .word compat_sys_setrlimit, sys_pivot_root, sys32_prctl, sys32_pciconfig_read, sys32_pciconfig_write
 /*150*/        .word sys_nis_syscall, sys_nis_syscall, sys_nis_syscall, sys_poll, sys_getdents64
        .word compat_sys_fcntl64, sys_ni_syscall, compat_sys_statfs, compat_sys_fstatfs, sys_oldumount
@@ -65,7 +65,7 @@ sys_call_table32:
        .word sys32_ipc, sys32_sigreturn, sys_clone, sys_nis_syscall, sys32_adjtimex
 /*220*/        .word compat_sys_sigprocmask, sys_ni_syscall, sys32_delete_module, sys_ni_syscall, sys_getpgid
        .word sys32_bdflush, sys32_sysfs, sys_nis_syscall, sys32_setfsuid16, sys32_setfsgid16
-/*230*/        .word compat_sys_select, sys_time, sys_nis_syscall, sys_stime, compat_statfs64
+/*230*/        .word sys32_select, sys_time, sys_nis_syscall, sys_stime, compat_statfs64
        .word compat_fstatfs64, sys_llseek, sys_mlock, sys_munlock, sys_mlockall
 /*240*/        .word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler
        .word sys_sched_yield, sys_sched_get_priority_max, sys_sched_get_priority_min, sys32_sched_rr_get_interval, compat_sys_nanosleep