patch-2.4.22 linux-2.4.22/arch/mips64/kernel/scall_64.S
Next file: linux-2.4.22/arch/mips64/kernel/scall_n32.S
Previous file: linux-2.4.22/arch/mips64/kernel/r4k_switch.S
Back to the patch index
Back to the overall index
- Lines: 465
- Date:
2003-08-25 04:44:40.000000000 -0700
- Orig file:
linux-2.4.21/arch/mips64/kernel/scall_64.S
- Orig date:
2002-11-28 15:53:10.000000000 -0800
diff -urN linux-2.4.21/arch/mips64/kernel/scall_64.S linux-2.4.22/arch/mips64/kernel/scall_64.S
@@ -17,14 +17,15 @@
#include <asm/unistd.h>
#include <asm/offset.h>
-#ifndef CONFIG_MIPS32_COMPAT
+#ifndef CONFIG_BINFMT_ELF32
+/* Neither O32 nor N32, so define handle_sys here */
#define handle_sys64 handle_sys
#endif
.align 5
NESTED(handle_sys64, PT_SIZE, sp)
/* When 32-bit compatibility is configured scall_o32.S already did this. */
-#ifndef CONFIG_MIPS32_COMPAT
+#if !defined(CONFIG_MIPS32_O32) && !defined(CONFIG_MIPS32_N32)
.set noat
SAVE_SOME
STI
@@ -66,7 +67,7 @@
SSNOP; SSNOP; SSNOP
ld t2, TASK_NEED_RESCHED($28)
- bnez t2, reschedule
+ bnez t2, _64_reschedule
lw v0, TASK_SIGPENDING($28)
bnez v0, signal_return
@@ -83,12 +84,14 @@
ori t0, t0, 1
mtc0 t0, CP0_STATUS
+ SAVE_STATIC
move a0, zero
move a1, sp
jal do_signal
+ RESTORE_STATIC
b restore_all
-reschedule:
+_64_reschedule:
SAVE_STATIC
jal schedule
b ret_from_sys_call
@@ -130,237 +133,215 @@
.align 3
sys_call_table:
- PTR sys_syscall /* 5000 */
- PTR sys_exit
- PTR sys_fork
- PTR sys_read
+ PTR sys_read /* 5000 */
PTR sys_write
- PTR sys_open /* 5005 */
+ PTR sys_open
PTR sys_close
- PTR sys_waitpid
- PTR sys_creat
- PTR sys_link
- PTR sys_unlink /* 5010 */
- PTR sys_execve
- PTR sys_chdir
- PTR sys_time
- PTR sys_mknod
- PTR sys_chmod /* 5015 */
- PTR sys_lchown
- PTR sys_ni_syscall
- PTR sys_stat
+ PTR sys_newstat
+ PTR sys_newfstat /* 5005 */
+ PTR sys_newlstat
+ PTR sys_poll
PTR sys_lseek
- PTR sys_getpid /* 5020 */
- PTR sys_mount
- PTR sys_oldumount
- PTR sys_setuid
- PTR sys_getuid
- PTR sys_stime /* 5025 */
- PTR sys_ni_syscall /* ptrace */
- PTR sys_alarm
- PTR sys_fstat
+ PTR sys_mmap
+ PTR sys_mprotect /* 5010 */
+ PTR sys_munmap
+ PTR sys_brk
+ PTR sys_rt_sigaction
+ PTR sys_rt_sigprocmask
+ PTR sys_ioctl /* 5015 */
+ PTR sys_pread
+ PTR sys_pwrite
+ PTR sys_readv
+ PTR sys_writev
+ PTR sys_access /* 5020 */
+ PTR sys_pipe
+ PTR sys_select
+ PTR sys_sched_yield
+ PTR sys_mremap
+ PTR sys_msync /* 5025 */
+ PTR sys_mincore
+ PTR sys_madvise
+ PTR sys_shmget
+ PTR sys_shmat
+ PTR sys_shmctl /* 5030 */
+ PTR sys_dup
+ PTR sys_dup2
PTR sys_pause
- PTR sys_utime /* 5030 */
- PTR sys_ni_syscall
- PTR sys_ni_syscall
- PTR sys_access
- PTR sys_nice
- PTR sys_ni_syscall /* 5035 */
- PTR sys_sync
- PTR sys_kill
- PTR sys_rename
+ PTR sys_nanosleep
+ PTR sys_getitimer /* 5035 */
+ PTR sys_setitimer
+ PTR sys_alarm
+ PTR sys_getpid
+ PTR sys_sendfile
+ PTR sys_socket /* 5040 */
+ PTR sys_connect
+ PTR sys_accept
+ PTR sys_sendto
+ PTR sys_recvfrom
+ PTR sys_sendmsg /* 5045 */
+ PTR sys_recvmsg
+ PTR sys_shutdown
+ PTR sys_bind
+ PTR sys_listen
+ PTR sys_getsockname /* 5050 */
+ PTR sys_getpeername
+ PTR sys_socketpair
+ PTR sys_setsockopt
+ PTR sys_getsockopt
+ PTR sys_clone /* 5055 */
+ PTR sys_fork
+ PTR sys_execve
+ PTR sys_exit
+ PTR sys_wait4
+ PTR sys_kill /* 5060 */
+ PTR sys_newuname
+ PTR sys_semget
+ PTR sys_semop
+ PTR sys_semctl
+ PTR sys_shmdt /* 5065 */
+ PTR sys_msgget
+ PTR sys_msgsnd
+ PTR sys_msgrcv
+ PTR sys_msgctl
+ PTR sys_fcntl /* 5070 */
+ PTR sys_flock
+ PTR sys_fsync
+ PTR sys_fdatasync
+ PTR sys_truncate
+ PTR sys_ftruncate /* 5075 */
+ PTR sys_getdents
+ PTR sys_getcwd
+ PTR sys_chdir
+ PTR sys_fchdir
+ PTR sys_rename /* 5080 */
PTR sys_mkdir
- PTR sys_rmdir /* 5040 */
- PTR sys_dup
- PTR sys_pipe
+ PTR sys_rmdir
+ PTR sys_creat
+ PTR sys_link
+ PTR sys_unlink /* 5085 */
+ PTR sys_symlink
+ PTR sys_readlink
+ PTR sys_chmod
+ PTR sys_fchmod
+ PTR sys_chown /* 5090 */
+ PTR sys_fchown
+ PTR sys_lchown
+ PTR sys_umask
+ PTR sys_gettimeofday
+ PTR sys_getrlimit /* 5095 */
+ PTR sys_getrusage
+ PTR sys_sysinfo
PTR sys_times
- PTR sys_ni_syscall
- PTR sys_brk /* 5045 */
- PTR sys_setgid
+ PTR sys_ptrace
+ PTR sys_getuid /* 5100 */
+ PTR sys_syslog
PTR sys_getgid
- PTR sys_ni_syscall /* was signal 2 */
- PTR sys_geteuid
- PTR sys_getegid /* 5050 */
- PTR sys_acct
- PTR sys_umount
- PTR sys_ni_syscall
- PTR sys_ioctl
- PTR sys_fcntl /* 5055 */
- PTR sys_ni_syscall
+ PTR sys_setuid
+ PTR sys_setgid
+ PTR sys_geteuid /* 5105 */
+ PTR sys_getegid
PTR sys_setpgid
- PTR sys_ni_syscall
- PTR sys_ni_syscall
- PTR sys_umask /* 5060 */
- PTR sys_chroot
- PTR sys_ustat
- PTR sys_dup2
PTR sys_getppid
- PTR sys_getpgrp /* 5065 */
- PTR sys_setsid
- PTR sys_sigaction
- PTR sys_sgetmask
- PTR sys_ssetmask
- PTR sys_setreuid /* 5070 */
+ PTR sys_getpgrp
+ PTR sys_setsid /* 5110 */
+ PTR sys_setreuid
PTR sys_setregid
- PTR sys_sigsuspend
- PTR sys_sigpending
- PTR sys_sethostname
- PTR sys_setrlimit /* 5075 */
- PTR sys_getrlimit
- PTR sys_getrusage
- PTR sys_gettimeofday
- PTR sys_settimeofday
- PTR sys_getgroups /* 5080 */
+ PTR sys_getgroups
PTR sys_setgroups
- PTR sys_ni_syscall /* old_select */
- PTR sys_symlink
- PTR sys_lstat
- PTR sys_readlink /* 5085 */
- PTR sys_uselib
- PTR sys_swapon
- PTR sys_reboot
- PTR sys_ni_syscall /* old_readdir */
- PTR sys_mmap /* 5090 */
- PTR sys_munmap
- PTR sys_truncate
- PTR sys_ftruncate
- PTR sys_fchmod
- PTR sys_fchown /* 5095 */
- PTR sys_getpriority
- PTR sys_setpriority
- PTR sys_ni_syscall
- PTR sys_statfs
- PTR sys_fstatfs /* 5100 */
- PTR sys_ni_syscall /* sys_ioperm */
- PTR sys_socketcall
- PTR sys_syslog
- PTR sys_setitimer
- PTR sys_getitimer /* 5105 */
- PTR sys_newstat
- PTR sys_newlstat
- PTR sys_newfstat
- PTR sys_ni_syscall
- PTR sys_ni_syscall /* sys_ioperm *//* 5110 */
- PTR sys_vhangup
- PTR sys_ni_syscall /* was sys_idle */
- PTR sys_ni_syscall /* sys_vm86 */
- PTR sys_wait4
- PTR sys_swapoff /* 5115 */
- PTR sys_sysinfo
- PTR sys_ipc
- PTR sys_fsync
- PTR sys_sigreturn
- PTR sys_clone /* 5120 */
- PTR sys_setdomainname
- PTR sys_newuname
- PTR sys_ni_syscall /* sys_modify_ldt */
- PTR sys_adjtimex
- PTR sys_mprotect /* 5125 */
- PTR sys_sigprocmask
- PTR sys_create_module
- PTR sys_init_module
- PTR sys_delete_module
- PTR sys_get_kernel_syms /* 5130 */
- PTR sys_quotactl
+ PTR sys_setresuid /* 5115 */
+ PTR sys_getresuid
+ PTR sys_setresgid
+ PTR sys_getresgid
PTR sys_getpgid
- PTR sys_fchdir
- PTR sys_bdflush
- PTR sys_sysfs /* 5135 */
- PTR sys_personality
- PTR sys_ni_syscall /* for afs_syscall */
- PTR sys_setfsuid
+ PTR sys_setfsuid /* 5120 */
PTR sys_setfsgid
- PTR sys_llseek /* 5140 */
- PTR sys_getdents
- PTR sys_select
- PTR sys_flock
- PTR sys_msync
- PTR sys_readv /* 5145 */
- PTR sys_writev
- PTR sys_cacheflush
- PTR sys_cachectl
- PTR sys_sysmips
- PTR sys_ni_syscall /* 5150 */
PTR sys_getsid
- PTR sys_fdatasync
- PTR sys_sysctl
- PTR sys_mlock
- PTR sys_munlock /* 5155 */
- PTR sys_mlockall
- PTR sys_munlockall
+ PTR sys_capget
+ PTR sys_capset
+ PTR sys_rt_sigpending /* 5125 */
+ PTR sys_rt_sigtimedwait
+ PTR sys_rt_sigqueueinfo
+ PTR sys_rt_sigsuspend
+ PTR sys_sigaltstack
+ PTR sys_utime /* 5130 */
+ PTR sys_mknod
+ PTR sys_personality
+ PTR sys_ustat
+ PTR sys_statfs
+ PTR sys_fstatfs /* 5135 */
+ PTR sys_sysfs
+ PTR sys_getpriority
+ PTR sys_setpriority
PTR sys_sched_setparam
- PTR sys_sched_getparam
- PTR sys_sched_setscheduler /* 5160 */
+ PTR sys_sched_getparam /* 5140 */
+ PTR sys_sched_setscheduler
PTR sys_sched_getscheduler
- PTR sys_sched_yield
PTR sys_sched_get_priority_max
PTR sys_sched_get_priority_min
- PTR sys_sched_rr_get_interval /* 5165 */
- PTR sys_nanosleep
- PTR sys_mremap
- PTR sys_accept
- PTR sys_bind
- PTR sys_connect /* 5170 */
- PTR sys_getpeername
- PTR sys_getsockname
- PTR sys_getsockopt
- PTR sys_listen
- PTR sys_recv /* 5175 */
- PTR sys_recvfrom
- PTR sys_recvmsg
- PTR sys_send
- PTR sys_sendmsg
- PTR sys_sendto /* 5180 */
- PTR sys_setsockopt
- PTR sys_shutdown
- PTR sys_socket
- PTR sys_socketpair
- PTR sys_setresuid /* 5185 */
- PTR sys_getresuid
+ PTR sys_sched_rr_get_interval /* 5145 */
+ PTR sys_mlock
+ PTR sys_munlock
+ PTR sys_mlockall
+ PTR sys_munlockall
+ PTR sys_vhangup /* 5150 */
+ PTR sys_pivot_root
+ PTR sys_sysctl
+ PTR sys_prctl
+ PTR sys_adjtimex
+ PTR sys_setrlimit /* 5155 */
+ PTR sys_chroot
+ PTR sys_sync
+ PTR sys_acct
+ PTR sys_settimeofday
+ PTR sys_mount /* 5160 */
+ PTR sys_umount
+ PTR sys_swapon
+ PTR sys_swapoff
+ PTR sys_reboot
+ PTR sys_sethostname /* 5165 */
+ PTR sys_setdomainname
+ PTR sys_create_module
+ PTR sys_init_module
+ PTR sys_delete_module
+ PTR sys_get_kernel_syms /* 5170 */
PTR sys_query_module
- PTR sys_poll
+ PTR sys_quotactl
PTR sys_nfsservctl
- PTR sys_setresgid /* 5190 */
- PTR sys_getresgid
- PTR sys_prctl
- PTR sys_rt_sigreturn
- PTR sys_rt_sigaction
- PTR sys_rt_sigprocmask /* 5195 */
- PTR sys_rt_sigpending
- PTR sys_rt_sigtimedwait
- PTR sys_rt_sigqueueinfo
- PTR sys_rt_sigsuspend
- PTR sys_pread /* 5200 */
- PTR sys_pwrite
- PTR sys_chown
- PTR sys_getcwd
- PTR sys_capget
- PTR sys_capset /* 5205 */
- PTR sys_sigaltstack
- PTR sys_sendfile
- PTR sys_ni_syscall
- PTR sys_ni_syscall
- PTR sys_pivot_root /* 5210 */
- PTR sys_mincore
- PTR sys_madvise
- PTR sys_getdents64
- PTR sys_ni_syscall
- PTR sys_gettid /* 5215 */
+ PTR sys_ni_syscall /* res. for getpmsg */
+ PTR sys_ni_syscall /* 5175 for putpmsg */
+ PTR sys_ni_syscall /* res. for afs_syscall */
+ PTR sys_ni_syscall /* res. for security */
+ PTR sys_gettid
PTR sys_readahead
- PTR sys_setxattr
+ PTR sys_setxattr /* 5180 */
PTR sys_lsetxattr
PTR sys_fsetxattr
- PTR sys_getxattr /* 5220 */
+ PTR sys_getxattr
PTR sys_lgetxattr
- PTR sys_fgetxattr
+ PTR sys_fgetxattr /* 5185 */
PTR sys_listxattr
PTR sys_llistxattr
- PTR sys_flistxattr /* 5225 */
+ PTR sys_flistxattr
PTR sys_removexattr
- PTR sys_lremovexattr
+ PTR sys_lremovexattr /* 5190 */
PTR sys_fremovexattr
- PTR sys_tkill, 2
- PTR sys_ni_syscall, 0 /* 5230 res. for sendfile64 */
- PTR sys_ni_syscall, 0 /* res. for futex */
- PTR sys_ni_syscall, 0 /* res. for sched_setaffinity */
- PTR sys_ni_syscall, 0 /* res. for sched_getaffinity */
+ PTR sys_tkill
+ PTR sys_time
+ PTR sys_ni_syscall /* res. for futex */
+ PTR sys_ni_syscall /* 5195 rs. sched_setaffinity */
+ PTR sys_ni_syscall /* res. f. sched_getaffinity */
+ PTR sys_cacheflush
+ PTR sys_cachectl
+ PTR sys_sysmips
+ PTR sys_ni_syscall /* 5200 */
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall /* 5205 */
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall
+ PTR sys_ni_syscall /* 5210 */
+ PTR sys_rt_sigreturn
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)