diff options
author | Paul Mackerras <paulus@samba.org> | 2006-02-10 00:02:20 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-02-10 00:02:20 -0500 |
commit | 8568daa49063fd84b52b9e22b4e2422417b4d483 (patch) | |
tree | 963b417d4ad86ca161636a8f788ccf4ab77effde | |
parent | 5bc159e6cb7ca8d173195919ee935885c129011e (diff) |
ppc: Use the system call table from arch/powerpc/kernel/systbl.S
With this, new system calls only have to be wired up in one place
for ARCH=ppc and ARCH=powerpc, rather than 2.
Signed-off-by: Paul Mackerras <paulus@samba.org>
-rw-r--r-- | arch/powerpc/kernel/Makefile | 6 | ||||
-rw-r--r-- | arch/powerpc/kernel/systbl.S | 2 | ||||
-rw-r--r-- | arch/ppc/kernel/misc.S | 283 |
3 files changed, 3 insertions, 288 deletions
diff --git a/arch/powerpc/kernel/Makefile b/arch/powerpc/kernel/Makefile index c287980b7e65..80e9fe2632b8 100644 --- a/arch/powerpc/kernel/Makefile +++ b/arch/powerpc/kernel/Makefile | |||
@@ -12,10 +12,10 @@ endif | |||
12 | 12 | ||
13 | obj-y := semaphore.o cputable.o ptrace.o syscalls.o \ | 13 | obj-y := semaphore.o cputable.o ptrace.o syscalls.o \ |
14 | irq.o align.o signal_32.o pmc.o vdso.o \ | 14 | irq.o align.o signal_32.o pmc.o vdso.o \ |
15 | init_task.o process.o | 15 | init_task.o process.o systbl.o |
16 | obj-y += vdso32/ | 16 | obj-y += vdso32/ |
17 | obj-$(CONFIG_PPC64) += setup_64.o binfmt_elf32.o sys_ppc32.o \ | 17 | obj-$(CONFIG_PPC64) += setup_64.o binfmt_elf32.o sys_ppc32.o \ |
18 | signal_64.o ptrace32.o systbl.o \ | 18 | signal_64.o ptrace32.o \ |
19 | paca.o cpu_setup_power4.o \ | 19 | paca.o cpu_setup_power4.o \ |
20 | firmware.o sysfs.o idle_64.o | 20 | firmware.o sysfs.o idle_64.o |
21 | obj-$(CONFIG_PPC64) += vdso64/ | 21 | obj-$(CONFIG_PPC64) += vdso64/ |
@@ -46,7 +46,7 @@ extra-$(CONFIG_8xx) := head_8xx.o | |||
46 | extra-y += vmlinux.lds | 46 | extra-y += vmlinux.lds |
47 | 47 | ||
48 | obj-y += time.o prom.o traps.o setup-common.o udbg.o | 48 | obj-y += time.o prom.o traps.o setup-common.o udbg.o |
49 | obj-$(CONFIG_PPC32) += entry_32.o setup_32.o misc_32.o systbl.o | 49 | obj-$(CONFIG_PPC32) += entry_32.o setup_32.o misc_32.o |
50 | obj-$(CONFIG_PPC64) += misc_64.o dma_64.o iommu.o | 50 | obj-$(CONFIG_PPC64) += misc_64.o dma_64.o iommu.o |
51 | obj-$(CONFIG_PPC_MULTIPLATFORM) += prom_init.o | 51 | obj-$(CONFIG_PPC_MULTIPLATFORM) += prom_init.o |
52 | obj-$(CONFIG_MODULES) += ppc_ksyms.o | 52 | obj-$(CONFIG_MODULES) += ppc_ksyms.o |
diff --git a/arch/powerpc/kernel/systbl.S b/arch/powerpc/kernel/systbl.S index 007b15ee36d2..55b9fc10694e 100644 --- a/arch/powerpc/kernel/systbl.S +++ b/arch/powerpc/kernel/systbl.S | |||
@@ -36,8 +36,6 @@ | |||
36 | #ifdef CONFIG_PPC64 | 36 | #ifdef CONFIG_PPC64 |
37 | #define sys_sigpending sys_ni_syscall | 37 | #define sys_sigpending sys_ni_syscall |
38 | #define sys_old_getrlimit sys_ni_syscall | 38 | #define sys_old_getrlimit sys_ni_syscall |
39 | #else | ||
40 | #define ppc_rtas sys_ni_syscall | ||
41 | #endif | 39 | #endif |
42 | 40 | ||
43 | _GLOBAL(sys_call_table) | 41 | _GLOBAL(sys_call_table) |
diff --git a/arch/ppc/kernel/misc.S b/arch/ppc/kernel/misc.S index c3427eed8345..5a936566fd61 100644 --- a/arch/ppc/kernel/misc.S +++ b/arch/ppc/kernel/misc.S | |||
@@ -1048,286 +1048,3 @@ _GLOBAL(name) \ | |||
1048 | blr | 1048 | blr |
1049 | 1049 | ||
1050 | SYSCALL(execve) | 1050 | SYSCALL(execve) |
1051 | |||
1052 | /* Why isn't this a) automatic, b) written in 'C'? */ | ||
1053 | .data | ||
1054 | .align 4 | ||
1055 | _GLOBAL(sys_call_table) | ||
1056 | .long sys_restart_syscall /* 0 */ | ||
1057 | .long sys_exit | ||
1058 | .long ppc_fork | ||
1059 | .long sys_read | ||
1060 | .long sys_write | ||
1061 | .long sys_open /* 5 */ | ||
1062 | .long sys_close | ||
1063 | .long sys_waitpid | ||
1064 | .long sys_creat | ||
1065 | .long sys_link | ||
1066 | .long sys_unlink /* 10 */ | ||
1067 | .long sys_execve | ||
1068 | .long sys_chdir | ||
1069 | .long sys_time | ||
1070 | .long sys_mknod | ||
1071 | .long sys_chmod /* 15 */ | ||
1072 | .long sys_lchown | ||
1073 | .long sys_ni_syscall /* old break syscall holder */ | ||
1074 | .long sys_stat | ||
1075 | .long sys_lseek | ||
1076 | .long sys_getpid /* 20 */ | ||
1077 | .long sys_mount | ||
1078 | .long sys_oldumount | ||
1079 | .long sys_setuid | ||
1080 | .long sys_getuid | ||
1081 | .long sys_stime /* 25 */ | ||
1082 | .long sys_ptrace | ||
1083 | .long sys_alarm | ||
1084 | .long sys_fstat | ||
1085 | .long sys_pause | ||
1086 | .long sys_utime /* 30 */ | ||
1087 | .long sys_ni_syscall /* old stty syscall holder */ | ||
1088 | .long sys_ni_syscall /* old gtty syscall holder */ | ||
1089 | .long sys_access | ||
1090 | .long sys_nice | ||
1091 | .long sys_ni_syscall /* 35 */ /* old ftime syscall holder */ | ||
1092 | .long sys_sync | ||
1093 | .long sys_kill | ||
1094 | .long sys_rename | ||
1095 | .long sys_mkdir | ||
1096 | .long sys_rmdir /* 40 */ | ||
1097 | .long sys_dup | ||
1098 | .long sys_pipe | ||
1099 | .long sys_times | ||
1100 | .long sys_ni_syscall /* old prof syscall holder */ | ||
1101 | .long sys_brk /* 45 */ | ||
1102 | .long sys_setgid | ||
1103 | .long sys_getgid | ||
1104 | .long sys_signal | ||
1105 | .long sys_geteuid | ||
1106 | .long sys_getegid /* 50 */ | ||
1107 | .long sys_acct | ||
1108 | .long sys_umount /* recycled never used phys() */ | ||
1109 | .long sys_ni_syscall /* old lock syscall holder */ | ||
1110 | .long sys_ioctl | ||
1111 | .long sys_fcntl /* 55 */ | ||
1112 | .long sys_ni_syscall /* old mpx syscall holder */ | ||
1113 | .long sys_setpgid | ||
1114 | .long sys_ni_syscall /* old ulimit syscall holder */ | ||
1115 | .long sys_olduname | ||
1116 | .long sys_umask /* 60 */ | ||
1117 | .long sys_chroot | ||
1118 | .long sys_ustat | ||
1119 | .long sys_dup2 | ||
1120 | .long sys_getppid | ||
1121 | .long sys_getpgrp /* 65 */ | ||
1122 | .long sys_setsid | ||
1123 | .long sys_sigaction | ||
1124 | .long sys_sgetmask | ||
1125 | .long sys_ssetmask | ||
1126 | .long sys_setreuid /* 70 */ | ||
1127 | .long sys_setregid | ||
1128 | .long sys_sigsuspend | ||
1129 | .long sys_sigpending | ||
1130 | .long sys_sethostname | ||
1131 | .long sys_setrlimit /* 75 */ | ||
1132 | .long sys_old_getrlimit | ||
1133 | .long sys_getrusage | ||
1134 | .long sys_gettimeofday | ||
1135 | .long sys_settimeofday | ||
1136 | .long sys_getgroups /* 80 */ | ||
1137 | .long sys_setgroups | ||
1138 | .long ppc_select | ||
1139 | .long sys_symlink | ||
1140 | .long sys_lstat | ||
1141 | .long sys_readlink /* 85 */ | ||
1142 | .long sys_uselib | ||
1143 | .long sys_swapon | ||
1144 | .long sys_reboot | ||
1145 | .long old_readdir | ||
1146 | .long sys_mmap /* 90 */ | ||
1147 | .long sys_munmap | ||
1148 | .long sys_truncate | ||
1149 | .long sys_ftruncate | ||
1150 | .long sys_fchmod | ||
1151 | .long sys_fchown /* 95 */ | ||
1152 | .long sys_getpriority | ||
1153 | .long sys_setpriority | ||
1154 | .long sys_ni_syscall /* old profil syscall holder */ | ||
1155 | .long sys_statfs | ||
1156 | .long sys_fstatfs /* 100 */ | ||
1157 | .long sys_ni_syscall | ||
1158 | .long sys_socketcall | ||
1159 | .long sys_syslog | ||
1160 | .long sys_setitimer | ||
1161 | .long sys_getitimer /* 105 */ | ||
1162 | .long sys_newstat | ||
1163 | .long sys_newlstat | ||
1164 | .long sys_newfstat | ||
1165 | .long sys_uname | ||
1166 | .long sys_ni_syscall /* 110 */ | ||
1167 | .long sys_vhangup | ||
1168 | .long sys_ni_syscall /* old 'idle' syscall */ | ||
1169 | .long sys_ni_syscall | ||
1170 | .long sys_wait4 | ||
1171 | .long sys_swapoff /* 115 */ | ||
1172 | .long sys_sysinfo | ||
1173 | .long sys_ipc | ||
1174 | .long sys_fsync | ||
1175 | .long sys_sigreturn | ||
1176 | .long ppc_clone /* 120 */ | ||
1177 | .long sys_setdomainname | ||
1178 | .long sys_newuname | ||
1179 | .long sys_ni_syscall | ||
1180 | .long sys_adjtimex | ||
1181 | .long sys_mprotect /* 125 */ | ||
1182 | .long sys_sigprocmask | ||
1183 | .long sys_ni_syscall /* old sys_create_module */ | ||
1184 | .long sys_init_module | ||
1185 | .long sys_delete_module | ||
1186 | .long sys_ni_syscall /* old sys_get_kernel_syms */ /* 130 */ | ||
1187 | .long sys_quotactl | ||
1188 | .long sys_getpgid | ||
1189 | .long sys_fchdir | ||
1190 | .long sys_bdflush | ||
1191 | .long sys_sysfs /* 135 */ | ||
1192 | .long sys_personality | ||
1193 | .long sys_ni_syscall /* for afs_syscall */ | ||
1194 | .long sys_setfsuid | ||
1195 | .long sys_setfsgid | ||
1196 | .long sys_llseek /* 140 */ | ||
1197 | .long sys_getdents | ||
1198 | .long ppc_select | ||
1199 | .long sys_flock | ||
1200 | .long sys_msync | ||
1201 | .long sys_readv /* 145 */ | ||
1202 | .long sys_writev | ||
1203 | .long sys_getsid | ||
1204 | .long sys_fdatasync | ||
1205 | .long sys_sysctl | ||
1206 | .long sys_mlock /* 150 */ | ||
1207 | .long sys_munlock | ||
1208 | .long sys_mlockall | ||
1209 | .long sys_munlockall | ||
1210 | .long sys_sched_setparam | ||
1211 | .long sys_sched_getparam /* 155 */ | ||
1212 | .long sys_sched_setscheduler | ||
1213 | .long sys_sched_getscheduler | ||
1214 | .long sys_sched_yield | ||
1215 | .long sys_sched_get_priority_max | ||
1216 | .long sys_sched_get_priority_min /* 160 */ | ||
1217 | .long sys_sched_rr_get_interval | ||
1218 | .long sys_nanosleep | ||
1219 | .long sys_mremap | ||
1220 | .long sys_setresuid | ||
1221 | .long sys_getresuid /* 165 */ | ||
1222 | .long sys_ni_syscall /* old sys_query_module */ | ||
1223 | .long sys_poll | ||
1224 | .long sys_nfsservctl | ||
1225 | .long sys_setresgid | ||
1226 | .long sys_getresgid /* 170 */ | ||
1227 | .long sys_prctl | ||
1228 | .long sys_rt_sigreturn | ||
1229 | .long sys_rt_sigaction | ||
1230 | .long sys_rt_sigprocmask | ||
1231 | .long sys_rt_sigpending /* 175 */ | ||
1232 | .long sys_rt_sigtimedwait | ||
1233 | .long sys_rt_sigqueueinfo | ||
1234 | .long sys_rt_sigsuspend | ||
1235 | .long sys_pread64 | ||
1236 | .long sys_pwrite64 /* 180 */ | ||
1237 | .long sys_chown | ||
1238 | .long sys_getcwd | ||
1239 | .long sys_capget | ||
1240 | .long sys_capset | ||
1241 | .long sys_sigaltstack /* 185 */ | ||
1242 | .long sys_sendfile | ||
1243 | .long sys_ni_syscall /* streams1 */ | ||
1244 | .long sys_ni_syscall /* streams2 */ | ||
1245 | .long ppc_vfork | ||
1246 | .long sys_getrlimit /* 190 */ | ||
1247 | .long sys_readahead | ||
1248 | .long sys_mmap2 | ||
1249 | .long sys_truncate64 | ||
1250 | .long sys_ftruncate64 | ||
1251 | .long sys_stat64 /* 195 */ | ||
1252 | .long sys_lstat64 | ||
1253 | .long sys_fstat64 | ||
1254 | .long sys_pciconfig_read | ||
1255 | .long sys_pciconfig_write | ||
1256 | .long sys_pciconfig_iobase /* 200 */ | ||
1257 | .long sys_ni_syscall /* 201 - reserved - MacOnLinux - new */ | ||
1258 | .long sys_getdents64 | ||
1259 | .long sys_pivot_root | ||
1260 | .long sys_fcntl64 | ||
1261 | .long sys_madvise /* 205 */ | ||
1262 | .long sys_mincore | ||
1263 | .long sys_gettid | ||
1264 | .long sys_tkill | ||
1265 | .long sys_setxattr | ||
1266 | .long sys_lsetxattr /* 210 */ | ||
1267 | .long sys_fsetxattr | ||
1268 | .long sys_getxattr | ||
1269 | .long sys_lgetxattr | ||
1270 | .long sys_fgetxattr | ||
1271 | .long sys_listxattr /* 215 */ | ||
1272 | .long sys_llistxattr | ||
1273 | .long sys_flistxattr | ||
1274 | .long sys_removexattr | ||
1275 | .long sys_lremovexattr | ||
1276 | .long sys_fremovexattr /* 220 */ | ||
1277 | .long sys_futex | ||
1278 | .long sys_sched_setaffinity | ||
1279 | .long sys_sched_getaffinity | ||
1280 | .long sys_ni_syscall | ||
1281 | .long sys_ni_syscall /* 225 - reserved for Tux */ | ||
1282 | .long sys_sendfile64 | ||
1283 | .long sys_io_setup | ||
1284 | .long sys_io_destroy | ||
1285 | .long sys_io_getevents | ||
1286 | .long sys_io_submit /* 230 */ | ||
1287 | .long sys_io_cancel | ||
1288 | .long sys_set_tid_address | ||
1289 | .long sys_fadvise64 | ||
1290 | .long sys_exit_group | ||
1291 | .long sys_lookup_dcookie /* 235 */ | ||
1292 | .long sys_epoll_create | ||
1293 | .long sys_epoll_ctl | ||
1294 | .long sys_epoll_wait | ||
1295 | .long sys_remap_file_pages | ||
1296 | .long sys_timer_create /* 240 */ | ||
1297 | .long sys_timer_settime | ||
1298 | .long sys_timer_gettime | ||
1299 | .long sys_timer_getoverrun | ||
1300 | .long sys_timer_delete | ||
1301 | .long sys_clock_settime /* 245 */ | ||
1302 | .long sys_clock_gettime | ||
1303 | .long sys_clock_getres | ||
1304 | .long sys_clock_nanosleep | ||
1305 | .long sys_swapcontext | ||
1306 | .long sys_tgkill /* 250 */ | ||
1307 | .long sys_utimes | ||
1308 | .long sys_statfs64 | ||
1309 | .long sys_fstatfs64 | ||
1310 | .long ppc_fadvise64_64 | ||
1311 | .long sys_ni_syscall /* 255 - rtas (used on ppc64) */ | ||
1312 | .long sys_debug_setcontext | ||
1313 | .long sys_ni_syscall /* 257 reserved for vserver */ | ||
1314 | .long sys_ni_syscall /* 258 reserved for new sys_remap_file_pages */ | ||
1315 | .long sys_ni_syscall /* 259 reserved for new sys_mbind */ | ||
1316 | .long sys_ni_syscall /* 260 reserved for new sys_get_mempolicy */ | ||
1317 | .long sys_ni_syscall /* 261 reserved for new sys_set_mempolicy */ | ||
1318 | .long sys_mq_open | ||
1319 | .long sys_mq_unlink | ||
1320 | .long sys_mq_timedsend | ||
1321 | .long sys_mq_timedreceive /* 265 */ | ||
1322 | .long sys_mq_notify | ||
1323 | .long sys_mq_getsetattr | ||
1324 | .long sys_kexec_load | ||
1325 | .long sys_add_key | ||
1326 | .long sys_request_key /* 270 */ | ||
1327 | .long sys_keyctl | ||
1328 | .long sys_waitid | ||
1329 | .long sys_ioprio_set | ||
1330 | .long sys_ioprio_get | ||
1331 | .long sys_inotify_init /* 275 */ | ||
1332 | .long sys_inotify_add_watch | ||
1333 | .long sys_inotify_rm_watch | ||