linux 3.12内核里系统调用常见的问题

01)系统调用信息保存在哪儿?
      保存在 sys_call_table当中。 以X86为例, sys_call_table的初始化如下:
    arch/x86/kernel/syscall_32.c
[cpp] view plain copy print ?
  1. #define __SYSCALL_I386(nr, sym, compat) [nr] = sym,  
  2.    
  3. typedef asmlinkage void (*sys_call_ptr_t)(void);  
  4.    
  5. extern asmlinkage void sys_ni_syscall(void);  
  6.    
  7. __visible const sys_call_ptr_t sys_call_table[__NR_syscall_max+1] = {  
  8.     /* 
  9.      * Smells like a compiler bug -- it doesn't work 
  10.      * when the & below is removed. 
  11.      */  
  12.     [0 ... __NR_syscall_max] = &sys_ni_syscall,  
  13. #include   
  14. };  
  15.       
其中 sys_call_table数组的初始化使用GCC的扩展语法,语句 [0 ... __NR_syscall_max] = &sys_ni_syscall将数组内容全部初始化为未实现版本,然后包含asm/syscalls_32.h当中逐项初始化的内容进行初始化。
asm/syscalls_32.h为编译期间生成的一个头文件,该内容由/include/uapi/asm-generic/unistd.h等头文件共同生成,其内容如下:
[plain] view plain copy print ?
  1. __SYSCALL_I386(0, sys_restart_syscall, sys_restart_syscall)  
  2. __SYSCALL_I386(1, sys_exit, sys_exit)  
  3. __SYSCALL_I386(2, sys_fork, stub32_fork)  
  4. __SYSCALL_I386(3, sys_read, sys_read)  
  5. __SYSCALL_I386(4, sys_write, sys_write)  
  6. __SYSCALL_I386(5, sys_open, compat_sys_open)  
  7. __SYSCALL_I386(6, sys_close, sys_close)  
  8. __SYSCALL_I386(7, sys_waitpid, sys32_waitpid)  
  9. __SYSCALL_I386(8, sys_creat, sys_creat)  
  10. __SYSCALL_I386(9, sys_link, sys_link)  
  11. __SYSCALL_I386(10, sys_unlink, sys_unlink)  
  12. __SYSCALL_I386(11, sys_execve, stub32_execve)  
  13. __SYSCALL_I386(12, sys_chdir, sys_chdir)  
  14. __SYSCALL_I386(13, sys_time, compat_sys_time)  
  15. __SYSCALL_I386(14, sys_mknod, sys_mknod)  
  16. __SYSCALL_I386(15, sys_chmod, sys_chmod)  
  17. __SYSCALL_I386(16, sys_lchown16, sys_lchown16)  
  18. __SYSCALL_I386(18, sys_stat, sys_stat)  
  19. __SYSCALL_I386(19, sys_lseek, compat_sys_lseek)  
  20. __SYSCALL_I386(20, sys_getpid, sys_getpid)  
  21. __SYSCALL_I386(21, sys_mount, compat_sys_mount)  
  22. __SYSCALL_I386(22, sys_oldumount, sys_oldumount)  
  23. __SYSCALL_I386(23, sys_setuid16, sys_setuid16)  
  24. __SYSCALL_I386(24, sys_getuid16, sys_getuid16)  
  25. __SYSCALL_I386(25, sys_stime, compat_sys_stime)  
  26. __SYSCALL_I386(26, sys_ptrace, compat_sys_ptrace)  
  27. __SYSCALL_I386(27, sys_alarm, sys_alarm)  
  28. __SYSCALL_I386(28, sys_fstat, sys_fstat)  
  29. __SYSCALL_I386(29, sys_pause, sys_pause)  
  30. __SYSCALL_I386(30, sys_utime, compat_sys_utime)  
  31. __SYSCALL_I386(33, sys_access, sys_access)  
  32. __SYSCALL_I386(34, sys_nice, sys_nice)  
  33. __SYSCALL_I386(36, sys_sync, sys_sync)  
  34. __SYSCALL_I386(37, sys_kill, sys_kill)  
  35. __SYSCALL_I386(38, sys_rename, sys_rename)  
  36. __SYSCALL_I386(39, sys_mkdir, sys_mkdir)  
  37. __SYSCALL_I386(40, sys_rmdir, sys_rmdir)  
  38. __SYSCALL_I386(41, sys_dup, sys_dup)  
  39. __SYSCALL_I386(42, sys_pipe, sys_pipe)  
  40. __SYSCALL_I386(43, sys_times, compat_sys_times)  
  41. __SYSCALL_I386(45, sys_brk, sys_brk)  
  42. __SYSCALL_I386(46, sys_setgid16, sys_setgid16)  
  43. __SYSCALL_I386(47, sys_getgid16, sys_getgid16)  
  44. __SYSCALL_I386(48, sys_signal, sys_signal)  
  45. __SYSCALL_I386(49, sys_geteuid16, sys_geteuid16)  
  46. __SYSCALL_I386(50, sys_getegid16, sys_getegid16)  
  47. __SYSCALL_I386(51, sys_acct, sys_acct)  
  48. __SYSCALL_I386(52, sys_umount, sys_umount)  
  49. __SYSCALL_I386(54, sys_ioctl, compat_sys_ioctl)  
  50. __SYSCALL_I386(55, sys_fcntl, compat_sys_fcntl64)  
  51. __SYSCALL_I386(57, sys_setpgid, sys_setpgid)  
  52. __SYSCALL_I386(59, sys_olduname, sys_olduname)  
  53. __SYSCALL_I386(60, sys_umask, sys_umask)  
  54. __SYSCALL_I386(61, sys_chroot, sys_chroot)  
  55. __SYSCALL_I386(62, sys_ustat, compat_sys_ustat)  
  56. __SYSCALL_I386(63, sys_dup2, sys_dup2)  
  57. __SYSCALL_I386(64, sys_getppid, sys_getppid)  
  58. __SYSCALL_I386(65, sys_getpgrp, sys_getpgrp)  
  59. __SYSCALL_I386(66, sys_setsid, sys_setsid)  
  60. __SYSCALL_I386(67, sys_sigaction, compat_sys_sigaction)  
  61. __SYSCALL_I386(68, sys_sgetmask, sys_sgetmask)  
  62. __SYSCALL_I386(69, sys_ssetmask, sys_ssetmask)  
  63. __SYSCALL_I386(70, sys_setreuid16, sys_setreuid16)  
  64. __SYSCALL_I386(71, sys_setregid16, sys_setregid16)  
  65. __SYSCALL_I386(72, sys_sigsuspend, sys_sigsuspend)  
  66. __SYSCALL_I386(73, sys_sigpending, compat_sys_sigpending)  
  67. __SYSCALL_I386(74, sys_sethostname, sys_sethostname)  
  68. __SYSCALL_I386(75, sys_setrlimit, compat_sys_setrlimit)  
  69. __SYSCALL_I386(76, sys_old_getrlimit, compat_sys_old_getrlimit)  
  70. __SYSCALL_I386(77, sys_getrusage, compat_sys_getrusage)  
  71. __SYSCALL_I386(78, sys_gettimeofday, compat_sys_gettimeofday)  
  72. __SYSCALL_I386(79, sys_settimeofday, compat_sys_settimeofday)  
  73. __SYSCALL_I386(80, sys_getgroups16, sys_getgroups16)  
  74. __SYSCALL_I386(81, sys_setgroups16, sys_setgroups16)  
  75. __SYSCALL_I386(82, sys_old_select, compat_sys_old_select)  
  76. __SYSCALL_I386(83, sys_symlink, sys_symlink)  
  77. __SYSCALL_I386(84, sys_lstat, sys_lstat)  
  78. __SYSCALL_I386(85, sys_readlink, sys_readlink)  
  79. __SYSCALL_I386(86, sys_uselib, sys_uselib)  
  80. __SYSCALL_I386(87, sys_swapon, sys_swapon)  
  81. __SYSCALL_I386(88, sys_reboot, sys_reboot)  
  82. __SYSCALL_I386(89, sys_old_readdir, compat_sys_old_readdir)  
  83. __SYSCALL_I386(90, sys_old_mmap, sys32_mmap)  
  84. __SYSCALL_I386(91, sys_munmap, sys_munmap)  
  85. __SYSCALL_I386(92, sys_truncate, compat_sys_truncate)  
  86. __SYSCALL_I386(93, sys_ftruncate, compat_sys_ftruncate)  
  87. __SYSCALL_I386(94, sys_fchmod, sys_fchmod)  
  88. __SYSCALL_I386(95, sys_fchown16, sys_fchown16)  
  89. __SYSCALL_I386(96, sys_getpriority, sys_getpriority)  
  90. __SYSCALL_I386(97, sys_setpriority, sys_setpriority)  
  91. __SYSCALL_I386(99, sys_statfs, compat_sys_statfs)  
  92. __SYSCALL_I386(100, sys_fstatfs, compat_sys_fstatfs)  
  93. __SYSCALL_I386(101, sys_ioperm, sys_ioperm)  
  94. __SYSCALL_I386(102, sys_socketcall, compat_sys_socketcall)  
  95. __SYSCALL_I386(103, sys_syslog, sys_syslog)  
  96. __SYSCALL_I386(104, sys_setitimer, compat_sys_setitimer)  
  97. __SYSCALL_I386(105, sys_getitimer, compat_sys_getitimer)  
  98. __SYSCALL_I386(106, sys_newstat, compat_sys_newstat)  
  99. __SYSCALL_I386(107, sys_newlstat, compat_sys_newlstat)  
  100. __SYSCALL_I386(108, sys_newfstat, compat_sys_newfstat)  
  101. __SYSCALL_I386(109, sys_uname, sys_uname)  
  102. __SYSCALL_I386(110, sys_iopl, sys_iopl)  
  103. __SYSCALL_I386(111, sys_vhangup, sys_vhangup)  
  104. __SYSCALL_I386(113, sys_vm86old, sys32_vm86_warning)  
  105. __SYSCALL_I386(114, sys_wait4, compat_sys_wait4)  
  106. __SYSCALL_I386(115, sys_swapoff, sys_swapoff)  
  107. __SYSCALL_I386(116, sys_sysinfo, compat_sys_sysinfo)  
  108. __SYSCALL_I386(117, sys_ipc, compat_sys_ipc)  
  109. __SYSCALL_I386(118, sys_fsync, sys_fsync)  
  110. __SYSCALL_I386(119, sys_sigreturn, stub32_sigreturn)  
  111. __SYSCALL_I386(120, sys_clone, stub32_clone)  
  112. __SYSCALL_I386(121, sys_setdomainname, sys_setdomainname)  
  113. __SYSCALL_I386(122, sys_newuname, sys_newuname)  
  114. __SYSCALL_I386(123, sys_modify_ldt, sys_modify_ldt)  
  115. __SYSCALL_I386(124, sys_adjtimex, compat_sys_adjtimex)  
  116. __SYSCALL_I386(125, sys_mprotect, sys_mprotect)  
  117. __SYSCALL_I386(126, sys_sigprocmask, compat_sys_sigprocmask)  
  118. __SYSCALL_I386(128, sys_init_module, sys_init_module)  
  119. __SYSCALL_I386(129, sys_delete_module, sys_delete_module)  
  120. __SYSCALL_I386(131, sys_quotactl, sys32_quotactl)  
  121. __SYSCALL_I386(132, sys_getpgid, sys_getpgid)  
  122. __SYSCALL_I386(133, sys_fchdir, sys_fchdir)  
  123. __SYSCALL_I386(134, sys_bdflush, sys_bdflush)  
  124. __SYSCALL_I386(135, sys_sysfs, sys_sysfs)  
  125. __SYSCALL_I386(136, sys_personality, sys_personality)  
  126. __SYSCALL_I386(138, sys_setfsuid16, sys_setfsuid16)  
  127. __SYSCALL_I386(139, sys_setfsgid16, sys_setfsgid16)  
  128. __SYSCALL_I386(140, sys_llseek, sys_llseek)  
  129. __SYSCALL_I386(141, sys_getdents, compat_sys_getdents)  
  130. __SYSCALL_I386(142, sys_select, compat_sys_select)  
  131. __SYSCALL_I386(143, sys_flock, sys_flock)  
  132. __SYSCALL_I386(144, sys_msync, sys_msync)  
  133. __SYSCALL_I386(145, sys_readv, compat_sys_readv)  
  134. __SYSCALL_I386(146, sys_writev, compat_sys_writev)  
  135. __SYSCALL_I386(147, sys_getsid, sys_getsid)  
  136. __SYSCALL_I386(148, sys_fdatasync, sys_fdatasync)  
  137. __SYSCALL_I386(149, sys_sysctl, compat_sys_sysctl)  
  138. __SYSCALL_I386(150, sys_mlock, sys_mlock)  
  139. __SYSCALL_I386(151, sys_munlock, sys_munlock)  
  140. __SYSCALL_I386(152, sys_mlockall, sys_mlockall)  
  141. __SYSCALL_I386(153, sys_munlockall, sys_munlockall)  
  142. __SYSCALL_I386(154, sys_sched_setparam, sys_sched_setparam)  
  143. __SYSCALL_I386(155, sys_sched_getparam, sys_sched_getparam)  
  144. __SYSCALL_I386(156, sys_sched_setscheduler, sys_sched_setscheduler)  
  145. __SYSCALL_I386(157, sys_sched_getscheduler, sys_sched_getscheduler)  
  146. __SYSCALL_I386(158, sys_sched_yield, sys_sched_yield)  
  147. __SYSCALL_I386(159, sys_sched_get_priority_max, sys_sched_get_priority_max)  
  148. __SYSCALL_I386(160, sys_sched_get_priority_min, sys_sched_get_priority_min)  
  149. __SYSCALL_I386(161, sys_sched_rr_get_interval, compat_sys_sched_rr_get_interval)  
  150. __SYSCALL_I386(162, sys_nanosleep, compat_sys_nanosleep)  
  151. __SYSCALL_I386(163, sys_mremap, sys_mremap)  
  152. __SYSCALL_I386(164, sys_setresuid16, sys_setresuid16)  
  153. __SYSCALL_I386(165, sys_getresuid16, sys_getresuid16)  
  154. __SYSCALL_I386(166, sys_vm86, sys32_vm86_warning)  
  155. __SYSCALL_I386(168, sys_poll, sys_poll)  
  156. __SYSCALL_I386(170, sys_setresgid16, sys_setresgid16)  
  157. __SYSCALL_I386(171, sys_getresgid16, sys_getresgid16)  
  158. __SYSCALL_I386(172, sys_prctl, sys_prctl)  
  159. __SYSCALL_I386(173, sys_rt_sigreturn, stub32_rt_sigreturn)  
  160. __SYSCALL_I386(174, sys_rt_sigaction, compat_sys_rt_sigaction)  
  161. __SYSCALL_I386(175, sys_rt_sigprocmask, sys_rt_sigprocmask)  
  162. __SYSCALL_I386(176, sys_rt_sigpending, compat_sys_rt_sigpending)  
  163. __SYSCALL_I386(177, sys_rt_sigtimedwait, compat_sys_rt_sigtimedwait)  
  164. __SYSCALL_I386(178, sys_rt_sigqueueinfo, compat_sys_rt_sigqueueinfo)  
  165. __SYSCALL_I386(179, sys_rt_sigsuspend, sys_rt_sigsuspend)  
  166. __SYSCALL_I386(180, sys_pread64, sys32_pread)  
  167. __SYSCALL_I386(181, sys_pwrite64, sys32_pwrite)  
  168. __SYSCALL_I386(182, sys_chown16, sys_chown16)  
  169. __SYSCALL_I386(183, sys_getcwd, sys_getcwd)  
  170. __SYSCALL_I386(184, sys_capget, sys_capget)  
  171. __SYSCALL_I386(185, sys_capset, sys_capset)  
  172. __SYSCALL_I386(186, sys_sigaltstack, compat_sys_sigaltstack)  
  173. __SYSCALL_I386(187, sys_sendfile, compat_sys_sendfile)  
  174. __SYSCALL_I386(190, sys_vfork, stub32_vfork)  
  175. __SYSCALL_I386(191, sys_getrlimit, compat_sys_getrlimit)  
  176. __SYSCALL_I386(192, sys_mmap_pgoff, sys_mmap_pgoff)  
  177. __SYSCALL_I386(193, sys_truncate64, sys32_truncate64)  
  178. __SYSCALL_I386(194, sys_ftruncate64, sys32_ftruncate64)  
  179. __SYSCALL_I386(195, sys_stat64, sys32_stat64)  
  180. __SYSCALL_I386(196, sys_lstat64, sys32_lstat64)  
  181. __SYSCALL_I386(197, sys_fstat64, sys32_fstat64)  
  182. __SYSCALL_I386(198, sys_lchown, sys_lchown)  
  183. __SYSCALL_I386(199, sys_getuid, sys_getuid)  
  184. __SYSCALL_I386(200, sys_getgid, sys_getgid)  
  185. __SYSCALL_I386(201, sys_geteuid, sys_geteuid)  
  186. __SYSCALL_I386(202, sys_getegid, sys_getegid)  
  187. __SYSCALL_I386(203, sys_setreuid, sys_setreuid)  
  188. __SYSCALL_I386(204, sys_setregid, sys_setregid)  
  189. __SYSCALL_I386(205, sys_getgroups, sys_getgroups)  
  190. __SYSCALL_I386(206, sys_setgroups, sys_setgroups)  
  191. __SYSCALL_I386(207, sys_fchown, sys_fchown)  
  192. __SYSCALL_I386(208, sys_setresuid, sys_setresuid)  
  193. __SYSCALL_I386(209, sys_getresuid, sys_getresuid)  
  194. __SYSCALL_I386(210, sys_setresgid, sys_setresgid)  
  195. __SYSCALL_I386(211, sys_getresgid, sys_getresgid)  
  196. __SYSCALL_I386(212, sys_chown, sys_chown)  
  197. __SYSCALL_I386(213, sys_setuid, sys_setuid)  
  198. __SYSCALL_I386(214, sys_setgid, sys_setgid)  
  199. __SYSCALL_I386(215, sys_setfsuid, sys_setfsuid)  
  200. __SYSCALL_I386(216, sys_setfsgid, sys_setfsgid)  
  201. __SYSCALL_I386(217, sys_pivot_root, sys_pivot_root)  
  202. __SYSCALL_I386(218, sys_mincore, sys_mincore)  
  203. __SYSCALL_I386(219, sys_madvise, sys_madvise)  
  204. __SYSCALL_I386(220, sys_getdents64, compat_sys_getdents64)  
  205. __SYSCALL_I386(221, sys_fcntl64, compat_sys_fcntl64)  
  206. __SYSCALL_I386(224, sys_gettid, sys_gettid)  
  207. __SYSCALL_I386(225, sys_readahead, sys32_readahead)  
  208. __SYSCALL_I386(226, sys_setxattr, sys_setxattr)  
  209. __SYSCALL_I386(227, sys_lsetxattr, sys_lsetxattr)  
  210. __SYSCALL_I386(228, sys_fsetxattr, sys_fsetxattr)  
  211. __SYSCALL_I386(229, sys_getxattr, sys_getxattr)  
  212. __SYSCALL_I386(230, sys_lgetxattr, sys_lgetxattr)  
  213. __SYSCALL_I386(231, sys_fgetxattr, sys_fgetxattr)  
  214. __SYSCALL_I386(232, sys_listxattr, sys_listxattr)  
  215. __SYSCALL_I386(233, sys_llistxattr, sys_llistxattr)  
  216. __SYSCALL_I386(234, sys_flistxattr, sys_flistxattr)  
  217. __SYSCALL_I386(235, sys_removexattr, sys_removexattr)  
  218. __SYSCALL_I386(236, sys_lremovexattr, sys_lremovexattr)  
  219. __SYSCALL_I386(237, sys_fremovexattr, sys_fremovexattr)  
  220. __SYSCALL_I386(238, sys_tkill, sys_tkill)  
  221. __SYSCALL_I386(239, sys_sendfile64, sys_sendfile64)  
  222. __SYSCALL_I386(240, sys_futex, compat_sys_futex)  
  223. __SYSCALL_I386(241, sys_sched_setaffinity, compat_sys_sched_setaffinity)  
  224. __SYSCALL_I386(242, sys_sched_getaffinity, compat_sys_sched_getaffinity)  
  225. __SYSCALL_I386(243, sys_set_thread_area, sys_set_thread_area)  
  226. __SYSCALL_I386(244, sys_get_thread_area, sys_get_thread_area)  
  227. __SYSCALL_I386(245, sys_io_setup, compat_sys_io_setup)  
  228. __SYSCALL_I386(246, sys_io_destroy, sys_io_destroy)  
  229. __SYSCALL_I386(247, sys_io_getevents, compat_sys_io_getevents)  
  230. __SYSCALL_I386(248, sys_io_submit, compat_sys_io_submit)  
  231. __SYSCALL_I386(249, sys_io_cancel, sys_io_cancel)  
  232. __SYSCALL_I386(250, sys_fadvise64, sys32_fadvise64)  
  233. __SYSCALL_I386(252, sys_exit_group, sys_exit_group)  
  234. __SYSCALL_I386(253, sys_lookup_dcookie, compat_sys_lookup_dcookie)  
  235. __SYSCALL_I386(254, sys_epoll_create, sys_epoll_create)  
  236. __SYSCALL_I386(255, sys_epoll_ctl, sys_epoll_ctl)  
  237. __SYSCALL_I386(256, sys_epoll_wait, sys_epoll_wait)  
  238. __SYSCALL_I386(257, sys_remap_file_pages, sys_remap_file_pages)  
  239. __SYSCALL_I386(258, sys_set_tid_address, sys_set_tid_address)  
  240. __SYSCALL_I386(259, sys_timer_create, compat_sys_timer_create)  
  241. __SYSCALL_I386(260, sys_timer_settime, compat_sys_timer_settime)  
  242. __SYSCALL_I386(261, sys_timer_gettime, compat_sys_timer_gettime)  
  243. __SYSCALL_I386(262, sys_timer_getoverrun, sys_timer_getoverrun)  
  244. __SYSCALL_I386(263, sys_timer_delete, sys_timer_delete)  
  245. __SYSCALL_I386(264, sys_clock_settime, compat_sys_clock_settime)  
  246. __SYSCALL_I386(265, sys_clock_gettime, compat_sys_clock_gettime)  
  247. __SYSCALL_I386(266, sys_clock_getres, compat_sys_clock_getres)  
  248. __SYSCALL_I386(267, sys_clock_nanosleep, compat_sys_clock_nanosleep)  
  249. __SYSCALL_I386(268, sys_statfs64, compat_sys_statfs64)  
  250. __SYSCALL_I386(269, sys_fstatfs64, compat_sys_fstatfs64)  
  251. __SYSCALL_I386(270, sys_tgkill, sys_tgkill)  
  252. __SYSCALL_I386(271, sys_utimes, compat_sys_utimes)  
  253. __SYSCALL_I386(272, sys_fadvise64_64, sys32_fadvise64_64)  
  254. __SYSCALL_I386(274, sys_mbind, sys_mbind)  
  255. __SYSCALL_I386(275, sys_get_mempolicy, compat_sys_get_mempolicy)  
  256. __SYSCALL_I386(276, sys_set_mempolicy, sys_set_mempolicy)  
  257. __SYSCALL_I386(277, sys_mq_open, compat_sys_mq_open)  
  258. __SYSCALL_I386(278, sys_mq_unlink, sys_mq_unlink)  
  259. __SYSCALL_I386(279, sys_mq_timedsend, compat_sys_mq_timedsend)  
  260. __SYSCALL_I386(280, sys_mq_timedreceive, compat_sys_mq_timedreceive)  
  261. __SYSCALL_I386(281, sys_mq_notify, compat_sys_mq_notify)  
  262. __SYSCALL_I386(282, sys_mq_getsetattr, compat_sys_mq_getsetattr)  
  263. __SYSCALL_I386(283, sys_kexec_load, compat_sys_kexec_load)  
  264. __SYSCALL_I386(284, sys_waitid, compat_sys_waitid)  
  265. __SYSCALL_I386(286, sys_add_key, sys_add_key)  
  266. __SYSCALL_I386(287, sys_request_key, sys_request_key)  
  267. __SYSCALL_I386(288, sys_keyctl, sys_keyctl)  
  268. __SYSCALL_I386(289, sys_ioprio_set, sys_ioprio_set)  
  269. __SYSCALL_I386(290, sys_ioprio_get, sys_ioprio_get)  
  270. __SYSCALL_I386(291, sys_inotify_init, sys_inotify_init)  
  271. __SYSCALL_I386(292, sys_inotify_add_watch, sys_inotify_add_watch)  
  272. __SYSCALL_I386(293, sys_inotify_rm_watch, sys_inotify_rm_watch)  
  273. __SYSCALL_I386(294, sys_migrate_pages, sys_migrate_pages)  
  274. __SYSCALL_I386(295, sys_openat, compat_sys_openat)  
  275. __SYSCALL_I386(296, sys_mkdirat, sys_mkdirat)  
  276. __SYSCALL_I386(297, sys_mknodat, sys_mknodat)  
  277. __SYSCALL_I386(298, sys_fchownat, sys_fchownat)  
  278. __SYSCALL_I386(299, sys_futimesat, compat_sys_futimesat)  
  279. __SYSCALL_I386(300, sys_fstatat64, sys32_fstatat)  
  280. __SYSCALL_I386(301, sys_unlinkat, sys_unlinkat)  
  281. __SYSCALL_I386(302, sys_renameat, sys_renameat)  
  282. __SYSCALL_I386(303, sys_linkat, sys_linkat)  
  283. __SYSCALL_I386(304, sys_symlinkat, sys_symlinkat)  
  284. __SYSCALL_I386(305, sys_readlinkat, sys_readlinkat)  
  285. __SYSCALL_I386(306, sys_fchmodat, sys_fchmodat)  
  286. __SYSCALL_I386(307, sys_faccessat, sys_faccessat)  
  287. __SYSCALL_I386(308, sys_pselect6, compat_sys_pselect6)  
  288. __SYSCALL_I386(309, sys_ppoll, compat_sys_ppoll)  
  289. __SYSCALL_I386(310, sys_unshare, sys_unshare)  
  290. __SYSCALL_I386(311, sys_set_robust_list, compat_sys_set_robust_list)  
  291. __SYSCALL_I386(312, sys_get_robust_list, compat_sys_get_robust_list)  
  292. __SYSCALL_I386(313, sys_splice, sys_splice)  
  293. __SYSCALL_I386(314, sys_sync_file_range, sys32_sync_file_range)  
  294. __SYSCALL_I386(315, sys_tee, sys_tee)  
  295. __SYSCALL_I386(316, sys_vmsplice, compat_sys_vmsplice)  
  296. __SYSCALL_I386(317, sys_move_pages, compat_sys_move_pages)  
  297. __SYSCALL_I386(318, sys_getcpu, sys_getcpu)  
  298. __SYSCALL_I386(319, sys_epoll_pwait, sys_epoll_pwait)  
  299. __SYSCALL_I386(320, sys_utimensat, compat_sys_utimensat)  
  300. __SYSCALL_I386(321, sys_signalfd, compat_sys_signalfd)  
  301. __SYSCALL_I386(322, sys_timerfd_create, sys_timerfd_create)  
  302. __SYSCALL_I386(323, sys_eventfd, sys_eventfd)  
  303. __SYSCALL_I386(324, sys_fallocate, sys32_fallocate)  
  304. __SYSCALL_I386(325, sys_timerfd_settime, compat_sys_timerfd_settime)  
  305. __SYSCALL_I386(326, sys_timerfd_gettime, compat_sys_timerfd_gettime)  
  306. __SYSCALL_I386(327, sys_signalfd4, compat_sys_signalfd4)  
  307. __SYSCALL_I386(328, sys_eventfd2, sys_eventfd2)  
  308. __SYSCALL_I386(329, sys_epoll_create1, sys_epoll_create1)  
  309. __SYSCALL_I386(330, sys_dup3, sys_dup3)  
  310. __SYSCALL_I386(331, sys_pipe2, sys_pipe2)  
  311. __SYSCALL_I386(332, sys_inotify_init1, sys_inotify_init1)  
  312. __SYSCALL_I386(333, sys_preadv, compat_sys_preadv)  
  313. __SYSCALL_I386(334, sys_pwritev, compat_sys_pwritev)  
  314. __SYSCALL_I386(335, sys_rt_tgsigqueueinfo, compat_sys_rt_tgsigqueueinfo)  
  315. __SYSCALL_I386(336, sys_perf_event_open, sys_perf_event_open)  
  316. __SYSCALL_I386(337, sys_recvmmsg, compat_sys_recvmmsg)  
  317. __SYSCALL_I386(338, sys_fanotify_init, sys_fanotify_init)  
  318. __SYSCALL_I386(339, sys_fanotify_mark, compat_sys_fanotify_mark)  
  319. __SYSCALL_I386(340, sys_prlimit64, sys_prlimit64)  
  320. __SYSCALL_I386(341, sys_name_to_handle_at, sys_name_to_handle_at)  
  321. __SYSCALL_I386(342, sys_open_by_handle_at, compat_sys_open_by_handle_at)  
  322. __SYSCALL_I386(343, sys_clock_adjtime, compat_sys_clock_adjtime)  
  323. __SYSCALL_I386(344, sys_syncfs, sys_syncfs)  
  324. __SYSCALL_I386(345, sys_sendmmsg, compat_sys_sendmmsg)  
  325. __SYSCALL_I386(346, sys_setns, sys_setns)  
  326. __SYSCALL_I386(347, sys_process_vm_readv, compat_sys_process_vm_readv)  
  327. __SYSCALL_I386(348, sys_process_vm_writev, compat_sys_process_vm_writev)  
  328. __SYSCALL_I386(349, sys_kcmp, sys_kcmp)  
  329. __SYSCALL_I386(350, sys_finit_module, sys_finit_module)  


02)系统调用如何被初始化?
    将系统调用初始化到中断向量表当中,以便使用int 0x80可以触发。
    见linux-3.12.4\arch\x86\kernel\traps.c:trap_init()
[cpp] view plain copy print ?
  1. #ifdef CONFIG_X86_32  
  2.  set_system_trap_gate(SYSCALL_VECTOR, &system_call);  
  3.  set_bit(SYSCALL_VECTOR, used_vectors);  
  4. #endif  

   
03)system_call函数是在哪儿定义的?。
见./arch/x86/kernel/entry_32.S:ENTRY(system_call)
该汇编主要做了下面几件事:
1.进入ring0特权级。
2.保存寄存器值。
3.检查trace标志是否被设置,若设置,为strace做额外工作。(主要供strace命令使用)
4.执行 syscall_call函数,调用 sys_call_table[%eax]中的系统调用服务例程。
5.退出,恢复信息。
[python] view plain copy print ?
  1. /*  
  2.  * syscall stub including irq exit should be protected against kprobes  
  3.  */  
  4.     .pushsection .kprobes.text, "ax"  
  5.     # system call handler stub  
  6. ENTRY(system_call)  
  7.     RING0_INT_FRAME         # can't unwind into user space anyway  
  8.     ASM_CLAC  
  9.     pushl_cfi %eax         # save orig_eax  
  10.     SAVE_ALL  
  11.     GET_THREAD_INFO(%ebp)  
  12.                     # system call tracing in operation / emulation  
  13.     testl $_TIF_WORK_SYSCALL_ENTRY,TI_flags(%ebp)  
  14.     jnz syscall_trace_entry  
  15.     cmpl $(NR_syscalls), %eax  
  16.     jae syscall_badsys  
  17. syscall_call:  
  18.     call *sys_call_table(,%eax,4)  
  19.     movl %eax,PT_EAX(%esp)     # store the return value  
  20. syscall_exit:  
  21.     LOCKDEP_SYS_EXIT  
  22.     DISABLE_INTERRUPTS(CLBR_ANY)    # make sure we don't miss an interrupt  
  23.                     # setting need_resched or sigpending  
  24.                     # between sampling and the iret  
  25.     TRACE_IRQS_OFF  
  26.     movl TI_flags(%ebp), %ecx  
  27.     testl $_TIF_ALLWORK_MASK, %ecx    # current->work  
  28.     jne syscall_exit_work  
  29.    
  30. restore_all:  
  31.     TRACE_IRQS_IRET  
  32. restore_all_notrace:  
  33.     movl PT_EFLAGS(%esp), %eax    # mix EFLAGS, SS and CS  
  34.     # Warning: PT_OLDSS(%esp) contains the wrong/random values if we  
  35.     # are returning to the kernel.  
  36.     # See comments in process.c:copy_thread() for details.  
  37.     movb PT_OLDSS(%esp), %ah  
  38.     movb PT_CS(%esp), %al  
  39.     andl $(X86_EFLAGS_VM | (SEGMENT_TI_MASK << 8) | SEGMENT_RPL_MASK), %eax  
  40.     cmpl $((SEGMENT_LDT << 8) | USER_RPL), %eax  
  41.     CFI_REMEMBER_STATE  
  42.     je ldt_ss          # returning to user-space with LDT SS  
  43. restore_nocheck:  
  44.     RESTORE_REGS 4         # skip orig_eax/error_code  
  45. irq_return:  
  46.     INTERRUPT_RETURN  
  47. .section .fixup,"ax"  
  48. ENTRY(iret_exc)  
  49.     pushl $0           # no error code  
  50.     pushl $do_iret_error  
  51.     jmp error_code  
  52. .previous  
  53.     _ASM_EXTABLE(irq_return,iret_exc)  
  54.    
  55.     CFI_RESTORE_STATE  
  56. ldt_ss:  
  57.     larl PT_OLDSS(%esp), %eax  
  58.     jnz restore_nocheck  
  59.     testl $0x00400000, %eax       # returning to 32bit stack?  
  60.     jnz restore_nocheck        # allright, normal return  
  61.    
  62. #ifdef CONFIG_PARAVIRT  
  63.     /*  
  64.      * The kernel can't run on a non-flat stack if paravirt mode  
  65.      * is active.  Rather than try to fixup the high bits of  
  66.      * ESP, bypass this code entirely.  This may break DOSemu  
  67.      * and/or Wine support in a paravirt VM, although the option  
  68.      * is still available to implement the setting of the high  
  69.      * 16-bits in the INTERRUPT_RETURN paravirt-op.  
  70.      */  
  71.     cmpl $0, pv_info+PARAVIRT_enabled  
  72.     jne restore_nocheck  
  73. #endif  
  74.    
  75. /*  
  76.  * Setup and switch to ESPFIX stack  
  77.  *  
  78.  * We're returning to userspace with a 16 bit stack. The CPU will not  
  79.  * restore the high word of ESP for us on executing iret... This is an  
  80.  * "official" bug of all the x86-compatible CPUs, which we can work  
  81.  * around to make dosemu and wine happy. We do this by preloading the  
  82.  * high word of ESP with the high word of the userspace ESP while  
  83.  * compensating for the offset by changing to the ESPFIX segment with  
  84.  * a base address that matches for the difference.  
  85.  */  
  86. #define GDT_ESPFIX_SS PER_CPU_VAR(gdt_page) + (GDT_ENTRY_ESPFIX_SS * 8)  
  87.     mov %esp, %edx            /* load kernel esp */  
  88.     mov PT_OLDESP(%esp), %eax /* load userspace esp */  
  89.     mov %dx, %ax          /* eax: new kernel esp */  
  90.     sub %eax, %edx            /* offset (low word is 0) */  
  91.     shr $16, %edx  
  92.     mov %dl, GDT_ESPFIX_SS + 4 /* bits 16..23 */  
  93.     mov %dh, GDT_ESPFIX_SS + 7 /* bits 24..31 */  
  94.     pushl_cfi $__ESPFIX_SS  
  95.     pushl_cfi %eax         /* new kernel esp */  
  96.     /* Disable interrupts, but do not irqtrace this section: we  
  97.      * will soon execute iret and the tracer was already set to  
  98.      * the irqstate after the iret */  
  99.     DISABLE_INTERRUPTS(CLBR_EAX)  
  100.     lss (%esp), %esp      /* switch to espfix segment */  
  101.     CFI_ADJUST_CFA_OFFSET -8  
  102.     jmp restore_nocheck  
  103.     CFI_ENDPROC  
  104. ENDPROC(system_call  


04)系统调用实现例程到底是如何定义的?
先来看看open系统调用的实现。open定义在fs/open.c当中,如下,其调用了 SYSCALL_DEFINE3宏,该宏定义在include/linux/syscalls.h当中。
[cpp] view plain copy print ?
  1. SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode)  
  2. {  
  3.     if (force_o_largefile())  
  4.         flags |= O_LARGEFILE;  
  5.    
  6.     return do_sys_open(AT_FDCWD, filename, flags, mode);  
  7. }  


我们根据 include/linux/syscalls.h当中的宏定义进行展开,得如下具体定义:

[cpp] view plain copy print ?
  1. /*找所有的类型定义,以字符串存储*/  
  2. static const char *types__open[] =   
  3. {  
  4.     __MAP(3,__SC_STR_TDECL,__VA_ARGS__)  
  5. };  
  6. /*以字符串存储变量名*/  
  7. static const char *args__open[] =   
  8. {  
  9.     __MAP(3,__SC_STR_ADECL,__VA_ARGS__)  
  10. };  
  11.     
  12. static struct syscall_metadata __used __syscall_meta__open =   
  13. {  
  14.     .name          = "sys_open",  
  15.     .syscall_nr     = -1,  /* Filled in at boot */  
  16.     .nb_args       = 3,  
  17.     .types          = 3 ? types__open : NULL,  
  18.     .args           = 3 ? args__open : NULL,  
  19.     .enter_event    = &event_enter__open,  
  20.     .exit_event     = &event_exit__open,  
  21.     .enter_fields   = LIST_HEAD_INIT(__syscall_meta__open.enter_fields),  
  22. };  
  23. static struct syscall_metadata __used __attribute__((section("__syscalls_metadata"))) *__p_syscall_meta__open = &__syscall_meta__open;  
  24.     
  25. static struct ftrace_event_call __used event_enter__open =  
  26. {  
  27.     .name           = "sys_enter_open",  
  28.     .class          = &event_class_syscall_enter,  
  29.     .event.funcs    = &enter_syscall_print_funcs,  
  30.     .data           = (void *)&__syscall_meta__open,  
  31.     .flags          = TRACE_EVENT_FL_CAP_ANY,  
  32. };  
  33.     
  34. static struct ftrace_event_call __used __attribute__((section("_ftrace_events"))) *__event_enter__open = &event_enter__open;  
  35.     
  36.     
  37. static struct ftrace_event_call __used event_exit__open =  
  38. {  
  39.     .name           = "sys_exit_open",  
  40.     .class          = &event_class_syscall_exit,  
  41.     .event.funcs    = &exit_syscall_print_funcs,  
  42.     .data           = (void *)&__syscall_meta__open,  
  43.     .flags          = TRACE_EVENT_FL_CAP_ANY,  
  44. };  
  45. static struct ftrace_event_call __used __attribute__((section("_ftrace_events"))) *__event_exit__open = &event_exit__open;  
  46.   
  47.   
  48. asmlinkage long sys_open(__MAP(3,__SC_DECL,__VA_ARGS__));  
  49.    
  50. static inline long SYSC_open(__MAP(3,__SC_DECL,__VA_ARGS__));  
  51.    
  52. asmlinkage long SyS_open(__MAP(3,__SC_LONG,__VA_ARGS__));  
  53.    
  54. static inline long SYSC_open(__MAP(3,__SC_DECL,__VA_ARGS__))  
  55. {  
  56.     if (force_o_largefile())  
  57.         flags |= O_LARGEFILE;  
  58.    
  59.     return do_sys_open(AT_FDCWD, filename, flags, mode);  
  60. }  
  61. asmlinkage long SyS_open(__MAP(3,__SC_LONG,__VA_ARGS__))  
  62. {  
  63.     long ret = SYSC_open(__MAP(3,__SC_CAST,__VA_ARGS__));  
  64.     __MAP(3,__SC_TEST,__VA_ARGS__);  
  65.     __PROTECT(3, ret,__MAP(3,__SC_ARGS,__VA_ARGS__));  
  66.     return ret;  
  67. }  
  68.    
  69. SYSCALL_ALIAS(sys_open, SyS_open);  

由上可知每一个系统调用都会定义一个syscall_metadata类型的静态数据变量,该变量的名称为 __syscall_meta__name,name为系统变量的名称。 
定义一个系统调用可以使用7种宏进行实现,它们分别是:
SYSCALL_DEFINE0
SYSCALL_DEFINE1
SYSCALL_DEFINE2
SYSCALL_DEFINE3
SYSCALL_DEFINE4
SYSCALL_DEFINE5
SYSCALL_DEFINE6
这7个宏后面的数字表示参数的个数,由此可见系统调用最多可支持6个参数,多余6个参数就要考虑使用指针进行传递,另外值得注意的是这7个宏的参数,它们在类型和名称之间添加了逗号,像open系统调用:
SYSCALL_DEFINE3(open,  const   char   __user *, filename,  int , flags, umode_t, mode)
这看起来像是有7个参数,但是恰恰是使用这种方式include/linux/syscalls.h当中的 __MAP宏才能知道参数的类型名和参数名称。

05)如何找到系统调用的具体函数位置?
    这个根据经验进行判断。
    系统及进程相关的系统调用在kernel/sys.c。
    文件系统相关的在fs/open.c和fs/read_write.c当中。
    进程通信的在ipc目录下。
    内存相关的在mm目录下。
    网络相关的在net目录下。
    
    另外一个很简答的方法是使用grep进行查找
    
[python] view plain copy print ?
  1. zhangys@debian:/usr/src/linux-3.12.4$ find . -name *.c | xargs grep SYSCALL_DEFINE[0-62&> syscall.txt  

    下面是我查找好的,希望对你有帮助
    
[cpp] view plain copy print ?
  1. grep: 2: No such file or directory  
  2. ./security/keys/keyctl.c:SYSCALL_DEFINE5(add_key, const char __user *, _type,  
  3. ./security/keys/keyctl.c:SYSCALL_DEFINE4(request_key, const char __user *, _type,  
  4. ./security/keys/keyctl.c:SYSCALL_DEFINE5(keyctl, int, option, unsigned long, arg2, unsigned long, arg3,  
  5. grep: 2: No such file or directory  
  6. ./drivers/pci/syscall.c:SYSCALL_DEFINE5(pciconfig_read, unsigned long, bus, unsigned long, dfn,  
  7. ./drivers/pci/syscall.c:SYSCALL_DEFINE5(pciconfig_write, unsigned long, bus, unsigned long, dfn,  
  8. grep: 2: No such file or directory  
  9. grep: 2: No such file or directory  
  10. ./kernel/signal.c:SYSCALL_DEFINE0(restart_syscall)  
  11. ./kernel/signal.c:SYSCALL_DEFINE4(rt_sigprocmask, int, how, sigset_t __user *, nset,  
  12. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE4(rt_sigprocmask, int, how, compat_sigset_t __user *, nset,  
  13. ./kernel/signal.c:SYSCALL_DEFINE2(rt_sigpending, sigset_t __user *, uset, size_t, sigsetsize)  
  14. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE2(rt_sigpending, compat_sigset_t __user *, uset,  
  15. ./kernel/signal.c:SYSCALL_DEFINE4(rt_sigtimedwait, const sigset_t __user *, uthese,  
  16. ./kernel/signal.c:SYSCALL_DEFINE2(kill, pid_t, pid, int, sig)  
  17. ./kernel/signal.c:SYSCALL_DEFINE3(tgkill, pid_t, tgid, pid_t, pid, int, sig)  
  18. ./kernel/signal.c:SYSCALL_DEFINE2(tkill, pid_t, pid, int, sig)  
  19. ./kernel/signal.c:SYSCALL_DEFINE3(rt_sigqueueinfo, pid_t, pid, int, sig,  
  20. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE3(rt_sigqueueinfo,  
  21. ./kernel/signal.c:SYSCALL_DEFINE4(rt_tgsigqueueinfo, pid_t, tgid, pid_t, pid, int, sig,  
  22. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE4(rt_tgsigqueueinfo,  
  23. ./kernel/signal.c:SYSCALL_DEFINE2(sigaltstack,const stack_t __user *,uss, stack_t __user *,uoss)  
  24. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE2(sigaltstack,  
  25. ./kernel/signal.c:SYSCALL_DEFINE1(sigpending, old_sigset_t __user *, set)  
  26. ./kernel/signal.c:SYSCALL_DEFINE3(sigprocmask, int, how, old_sigset_t __user *, nset,  
  27. ./kernel/signal.c:SYSCALL_DEFINE4(rt_sigaction, int, sig,  
  28. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE4(rt_sigaction, int, sig,  
  29. ./kernel/signal.c:SYSCALL_DEFINE3(sigaction, int, sig,  
  30. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE3(sigaction, int, sig,  
  31. ./kernel/signal.c:SYSCALL_DEFINE0(sgetmask)  
  32. ./kernel/signal.c:SYSCALL_DEFINE1(ssetmask, int, newmask)  
  33. ./kernel/signal.c:SYSCALL_DEFINE2(signal, int, sig, __sighandler_t, handler)  
  34. ./kernel/signal.c:SYSCALL_DEFINE0(pause)  
  35. ./kernel/signal.c:SYSCALL_DEFINE2(rt_sigsuspend, sigset_t __user *, unewset, size_t, sigsetsize)  
  36. ./kernel/signal.c:COMPAT_SYSCALL_DEFINE2(rt_sigsuspend, compat_sigset_t __user *, unewset, compat_size_t, sigsetsize)  
  37. ./kernel/signal.c:SYSCALL_DEFINE1(sigsuspend, old_sigset_t, mask)  
  38. ./kernel/signal.c:SYSCALL_DEFINE3(sigsuspend, int, unused1, int, unused2, old_sigset_t, mask)  
  39. ./kernel/exec_domain.c:SYSCALL_DEFINE1(personality, unsigned int, personality)  
  40. ./kernel/kcmp.c:SYSCALL_DEFINE5(kcmp, pid_t, pid1, pid_t, pid2, int, type,  
  41. ./kernel/futex.c:SYSCALL_DEFINE2(set_robust_list, struct robust_list_head __user *, head,  
  42. ./kernel/futex.c:SYSCALL_DEFINE3(get_robust_list, int, pid,  
  43. ./kernel/futex.c:SYSCALL_DEFINE6(futex, u32 __user *, uaddr, int, op, u32, val,  
  44. ./kernel/reboot.c:SYSCALL_DEFINE4(reboot, int, magic1, int, magic2, unsigned int, cmd,  
  45. ./kernel/itimer.c:SYSCALL_DEFINE2(getitimer, int, which, struct itimerval __user *, value)  
  46. ./kernel/itimer.c:SYSCALL_DEFINE3(setitimer, int, which, struct itimerval __user *, value,  
  47. ./kernel/exit.c:SYSCALL_DEFINE1(exit, int, error_code)  
  48. ./kernel/exit.c:SYSCALL_DEFINE1(exit_group, int, error_code)  
  49. ./kernel/exit.c:SYSCALL_DEFINE5(waitid, int, which, pid_t, upid, struct siginfo __user *,  
  50. ./kernel/exit.c:SYSCALL_DEFINE4(wait4, pid_t, upid, int __user *, stat_addr,  
  51. ./kernel/exit.c:SYSCALL_DEFINE3(waitpid, pid_t, pid, int __user *, stat_addr, int, options)  
  52. ./kernel/events/core.c:SYSCALL_DEFINE5(perf_event_open,  
  53. ./kernel/fork.c:SYSCALL_DEFINE1(set_tid_address, int __user *, tidptr)  
  54. ./kernel/fork.c:SYSCALL_DEFINE0(fork)  
  55. ./kernel/fork.c:SYSCALL_DEFINE0(vfork)  
  56. ./kernel/fork.c:SYSCALL_DEFINE5(clone, unsigned long, clone_flags, unsigned long, newsp,  
  57. ./kernel/fork.c:SYSCALL_DEFINE5(clone, unsigned long, newsp, unsigned long, clone_flags,  
  58. ./kernel/fork.c:SYSCALL_DEFINE6(clone, unsigned long, clone_flags, unsigned long, newsp,  
  59. ./kernel/fork.c:SYSCALL_DEFINE5(clone, unsigned long, clone_flags, unsigned long, newsp,  
  60. ./kernel/fork.c:SYSCALL_DEFINE1(unshare, unsigned long, unshare_flags)  
  61. ./kernel/uid16.c:SYSCALL_DEFINE3(chown16, const char __user *, filename, old_uid_t, user, old_gid_t, group)  
  62. ./kernel/uid16.c:SYSCALL_DEFINE3(lchown16, const char __user *, filename, old_uid_t, user, old_gid_t, group)  
  63. ./kernel/uid16.c:SYSCALL_DEFINE3(fchown16, unsigned int, fd, old_uid_t, user, old_gid_t, group)  
  64. ./kernel/uid16.c:SYSCALL_DEFINE2(setregid16, old_gid_t, rgid, old_gid_t, egid)  
  65. ./kernel/uid16.c:SYSCALL_DEFINE1(setgid16, old_gid_t, gid)  
  66. ./kernel/uid16.c:SYSCALL_DEFINE2(setreuid16, old_uid_t, ruid, old_uid_t, euid)  
  67. ./kernel/uid16.c:SYSCALL_DEFINE1(setuid16, old_uid_t, uid)  
  68. ./kernel/uid16.c:SYSCALL_DEFINE3(setresuid16, old_uid_t, ruid, old_uid_t, euid, old_uid_t, suid)  
  69. ./kernel/uid16.c:SYSCALL_DEFINE3(getresuid16, old_uid_t __user *, ruidp, old_uid_t __user *, euidp, old_uid_t __user *, suidp)  
  70. ./kernel/uid16.c:SYSCALL_DEFINE3(setresgid16, old_gid_t, rgid, old_gid_t, egid, old_gid_t, sgid)  
  71. ./kernel/uid16.c:SYSCALL_DEFINE3(getresgid16, old_gid_t __user *, rgidp, old_gid_t __user *, egidp, old_gid_t __user *, sgidp)  
  72. ./kernel/uid16.c:SYSCALL_DEFINE1(setfsuid16, old_uid_t, uid)  
  73. ./kernel/uid16.c:SYSCALL_DEFINE1(setfsgid16, old_gid_t, gid)  
  74. ./kernel/uid16.c:SYSCALL_DEFINE2(getgroups16, int, gidsetsize, old_gid_t __user *, grouplist)  
  75. ./kernel/uid16.c:SYSCALL_DEFINE2(setgroups16, int, gidsetsize, old_gid_t __user *, grouplist)  
  76. ./kernel/uid16.c:SYSCALL_DEFINE0(getuid16)  
  77. ./kernel/uid16.c:SYSCALL_DEFINE0(geteuid16)  
  78. ./kernel/uid16.c:SYSCALL_DEFINE0(getgid16)  
  79. ./kernel/uid16.c:SYSCALL_DEFINE0(getegid16)  
  80. ./kernel/sysctl_binary.c:SYSCALL_DEFINE1(sysctl, struct __sysctl_args __user *, args)  
  81. ./kernel/sysctl_binary.c:COMPAT_SYSCALL_DEFINE1(sysctl, struct compat_sysctl_args __user *, args)  
  82. ./kernel/timer.c:SYSCALL_DEFINE1(alarm, unsigned int, seconds)  
  83. ./kernel/hrtimer.c:SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp,  
  84. ./kernel/acct.c:SYSCALL_DEFINE1(acct, const char __user *, name)  
  85. ./kernel/module.c:SYSCALL_DEFINE2(delete_module, const char __user *, name_user,  
  86. ./kernel/module.c:SYSCALL_DEFINE3(init_module, void __user *, umod,  
  87. ./kernel/module.c:SYSCALL_DEFINE3(finit_module, int, fd, const char __user *, uargs, int, flags)  
  88. ./kernel/nsproxy.c:SYSCALL_DEFINE2(setns, int, fd, int, nstype)  
  89. ./kernel/sched/core.c:SYSCALL_DEFINE1(nice, int, increment)  
  90. ./kernel/sched/core.c:SYSCALL_DEFINE3(sched_setscheduler, pid_t, pid, int, policy,  
  91. ./kernel/sched/core.c:SYSCALL_DEFINE2(sched_setparam, pid_t, pid, struct sched_param __user *, param)  
  92. ./kernel/sched/core.c:SYSCALL_DEFINE1(sched_getscheduler, pid_t, pid)  
  93. ./kernel/sched/core.c:SYSCALL_DEFINE2(sched_getparam, pid_t, pid, struct sched_param __user *, param)  
  94. ./kernel/sched/core.c:SYSCALL_DEFINE3(sched_setaffinity, pid_t, pid, unsigned int, len,  
  95. ./kernel/sched/core.c:SYSCALL_DEFINE3(sched_getaffinity, pid_t, pid, unsigned int, len,  
  96. ./kernel/sched/core.c:SYSCALL_DEFINE0(sched_yield)  
  97. ./kernel/sched/core.c:SYSCALL_DEFINE1(sched_get_priority_max, int, policy)  
  98. ./kernel/sched/core.c:SYSCALL_DEFINE1(sched_get_priority_min, int, policy)  
  99. ./kernel/sched/core.c:SYSCALL_DEFINE2(sched_rr_get_interval, pid_t, pid,  
  100. ./kernel/capability.c:SYSCALL_DEFINE2(capget, cap_user_header_t, header, cap_user_data_t, dataptr)  
  101. ./kernel/capability.c:SYSCALL_DEFINE2(capset, cap_user_header_t, header, const cap_user_data_t, data)  
  102. ./kernel/ptrace.c:SYSCALL_DEFINE4(ptrace, long, request, long, pid, unsigned long, addr,  
  103. ./kernel/groups.c:SYSCALL_DEFINE2(getgroups, int, gidsetsize, gid_t __user *, grouplist)  
  104. ./kernel/groups.c:SYSCALL_DEFINE2(setgroups, int, gidsetsize, gid_t __user *, grouplist)  
  105. ./kernel/time.c:SYSCALL_DEFINE1(time, time_t __user *, tloc)  
  106. ./kernel/time.c:SYSCALL_DEFINE1(stime, time_t __user *, tptr)  
  107. ./kernel/time.c:SYSCALL_DEFINE2(gettimeofday, struct timeval __user *, tv,  
  108. ./kernel/time.c:SYSCALL_DEFINE2(settimeofday, struct timeval __user *, tv,  
  109. ./kernel/time.c:SYSCALL_DEFINE1(adjtimex, struct timex __user *, txc_p)  
  110. ./kernel/kexec.c:SYSCALL_DEFINE4(kexec_load, unsigned long, entry, unsigned long, nr_segments,  
  111. ./kernel/futex_compat.c:COMPAT_SYSCALL_DEFINE2(set_robust_list,  
  112. ./kernel/futex_compat.c:COMPAT_SYSCALL_DEFINE3(get_robust_list, int, pid,  
  113. ./kernel/futex_compat.c:COMPAT_SYSCALL_DEFINE6(futex, u32 __user *, uaddr, int, op, u32, val,  
  114. ./kernel/sys.c:SYSCALL_DEFINE3(setpriority, int, which, int, who, int, niceval)  
  115. ./kernel/sys.c:SYSCALL_DEFINE2(getpriority, int, which, int, who)  
  116. ./kernel/sys.c:SYSCALL_DEFINE2(setregid, gid_t, rgid, gid_t, egid)  
  117. ./kernel/sys.c:SYSCALL_DEFINE1(setgid, gid_t, gid)  
  118. ./kernel/sys.c:SYSCALL_DEFINE2(setreuid, uid_t, ruid, uid_t, euid)  
  119. ./kernel/sys.c:SYSCALL_DEFINE1(setuid, uid_t, uid)  
  120. ./kernel/sys.c:SYSCALL_DEFINE3(setresuid, uid_t, ruid, uid_t, euid, uid_t, suid)  
  121. ./kernel/sys.c:SYSCALL_DEFINE3(getresuid, uid_t __user *, ruidp, uid_t __user *, euidp, uid_t __user *, suidp)  
  122. ./kernel/sys.c:SYSCALL_DEFINE3(setresgid, gid_t, rgid, gid_t, egid, gid_t, sgid)  
  123. ./kernel/sys.c:SYSCALL_DEFINE3(getresgid, gid_t __user *, rgidp, gid_t __user *, egidp, gid_t __user *, sgidp)  
  124. ./kernel/sys.c:SYSCALL_DEFINE1(setfsuid, uid_t, uid)  
  125. ./kernel/sys.c:SYSCALL_DEFINE1(setfsgid, gid_t, gid)  
  126. ./kernel/sys.c:SYSCALL_DEFINE0(getpid)  
  127. ./kernel/sys.c:SYSCALL_DEFINE0(gettid)  
  128. ./kernel/sys.c:SYSCALL_DEFINE0(getppid)  
  129. ./kernel/sys.c:SYSCALL_DEFINE0(getuid)  
  130. ./kernel/sys.c:SYSCALL_DEFINE0(geteuid)  
  131. ./kernel/sys.c:SYSCALL_DEFINE0(getgid)  
  132. ./kernel/sys.c:SYSCALL_DEFINE0(getegid)  
  133. ./kernel/sys.c:SYSCALL_DEFINE1(times, struct tms __user *, tbuf)  
  134. ./kernel/sys.c:SYSCALL_DEFINE2(setpgid, pid_t, pid, pid_t, pgid)  
  135. ./kernel/sys.c:SYSCALL_DEFINE1(getpgid, pid_t, pid)  
  136. ./kernel/sys.c:SYSCALL_DEFINE0(getpgrp)  
  137. ./kernel/sys.c:SYSCALL_DEFINE1(getsid, pid_t, pid)  
  138. ./kernel/sys.c:SYSCALL_DEFINE0(setsid)  
  139. ./kernel/sys.c:SYSCALL_DEFINE1(newuname, struct new_utsname __user *, name)  
  140. ./kernel/sys.c:SYSCALL_DEFINE1(uname, struct old_utsname __user *, name)  
  141. ./kernel/sys.c:SYSCALL_DEFINE1(olduname, struct oldold_utsname __user *, name)  
  142. ./kernel/sys.c:SYSCALL_DEFINE2(sethostname, char __user *, name, int, len)  
  143. ./kernel/sys.c:SYSCALL_DEFINE2(gethostname, char __user *, name, int, len)  
  144. ./kernel/sys.c:SYSCALL_DEFINE2(setdomainname, char __user *, name, int, len)  
  145. ./kernel/sys.c:SYSCALL_DEFINE2(getrlimit, unsigned int, resource, struct rlimit __user *, rlim)  
  146. ./kernel/sys.c:SYSCALL_DEFINE2(old_getrlimit, unsigned int, resource,  
  147. ./kernel/sys.c:SYSCALL_DEFINE4(prlimit64, pid_t, pid, unsigned int, resource,  
  148. ./kernel/sys.c:SYSCALL_DEFINE2(setrlimit, unsigned int, resource, struct rlimit __user *, rlim)  
  149. ./kernel/sys.c:SYSCALL_DEFINE2(getrusage, int, who, struct rusage __user *, ru)  
  150. ./kernel/sys.c:COMPAT_SYSCALL_DEFINE2(getrusage, int, who, struct compat_rusage __user *, ru)  
  151. ./kernel/sys.c:SYSCALL_DEFINE1(umask, int, mask)  
  152. ./kernel/sys.c:SYSCALL_DEFINE5(prctl, int, option, unsigned long, arg2, unsigned long, arg3,  
  153. ./kernel/sys.c:SYSCALL_DEFINE3(getcpu, unsigned __user *, cpup, unsigned __user *, nodep,  
  154. ./kernel/sys.c:SYSCALL_DEFINE1(sysinfo, struct sysinfo __user *, info)  
  155. ./kernel/sys.c:COMPAT_SYSCALL_DEFINE1(sysinfo, struct compat_sysinfo __user *, info)  
  156. ./kernel/printk/printk.c:SYSCALL_DEFINE3(syslog, int, type, char __user *, buf, int, len)  
  157. ./kernel/posix-timers.c:SYSCALL_DEFINE3(timer_create, const clockid_t, which_clock,  
  158. ./kernel/posix-timers.c:SYSCALL_DEFINE2(timer_gettime, timer_t, timer_id,  
  159. ./kernel/posix-timers.c:SYSCALL_DEFINE1(timer_getoverrun, timer_t, timer_id)  
  160. ./kernel/posix-timers.c:SYSCALL_DEFINE4(timer_settime, timer_t, timer_id, int, flags,  
  161. ./kernel/posix-timers.c:SYSCALL_DEFINE1(timer_delete, timer_t, timer_id)  
  162. ./kernel/posix-timers.c:SYSCALL_DEFINE2(clock_settime, const clockid_t, which_clock,  
  163. ./kernel/posix-timers.c:SYSCALL_DEFINE2(clock_gettime, const clockid_t, which_clock,  
  164. ./kernel/posix-timers.c:SYSCALL_DEFINE2(clock_adjtime, const clockid_t, which_clock,  
  165. ./kernel/posix-timers.c:SYSCALL_DEFINE2(clock_getres, const clockid_t, which_clock,  
  166. ./kernel/posix-timers.c:SYSCALL_DEFINE4(clock_nanosleep, const clockid_t, which_clock, int, flags,  
  167. ./kernel/compat.c:COMPAT_SYSCALL_DEFINE2(getitimer, int, which,  
  168. ./kernel/compat.c:COMPAT_SYSCALL_DEFINE3(setitimer, int, which,  
  169. ./kernel/compat.c:COMPAT_SYSCALL_DEFINE3(sigprocmask, int, how,  
  170. ./kernel/compat.c:COMPAT_SYSCALL_DEFINE4(wait4,  
  171. ./kernel/compat.c:COMPAT_SYSCALL_DEFINE5(waitid,  
  172. ./kernel/compat.c:COMPAT_SYSCALL_DEFINE4(rt_sigtimedwait, compat_sigset_t __user *, uthese,  
  173. ./kernel/compat.c:COMPAT_SYSCALL_DEFINE2(sched_rr_get_interval,  
  174. ./mm/process_vm_access.c:SYSCALL_DEFINE6(process_vm_readv, pid_t, pid, const struct iovec __user *, lvec,  
  175. ./mm/process_vm_access.c:SYSCALL_DEFINE6(process_vm_writev, pid_t, pid,  
  176. ./mm/mincore.c:SYSCALL_DEFINE3(mincore, unsigned long, start, size_t, len,  
  177. ./mm/madvise.c:SYSCALL_DEFINE3(madvise, unsigned long, start, size_t, len_in, int, behavior)  
  178. ./mm/mlock.c:SYSCALL_DEFINE2(mlock, unsigned long, start, size_t, len)  
  179. ./mm/mlock.c:SYSCALL_DEFINE2(munlock, unsigned long, start, size_t, len)  
  180. ./mm/mlock.c:SYSCALL_DEFINE1(mlockall, int, flags)  
  181. ./mm/mlock.c:SYSCALL_DEFINE0(munlockall)  
  182. ./mm/fremap.c:SYSCALL_DEFINE5(remap_file_pages, unsigned long, start, unsigned long, size,  
  183. ./mm/fadvise.c:SYSCALL_DEFINE4(fadvise64_64, int, fd, loff_t, offset, loff_t, len, int, advice)  
  184. ./mm/fadvise.c:SYSCALL_DEFINE4(fadvise64, int, fd, loff_t, offset, size_t, len, int, advice)  
  185. ./mm/mremap.c:SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,  
  186. ./mm/swapfile.c:SYSCALL_DEFINE1(swapoff, const char __user *, specialfile)  
  187. ./mm/swapfile.c:SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags)  
  188. ./mm/msync.c:SYSCALL_DEFINE3(msync, unsigned long, start, size_t, len, int, flags)  
  189. ./mm/readahead.c:SYSCALL_DEFINE3(readahead, int, fd, loff_t, offset, size_t, count)  
  190. ./mm/nommu.c:SYSCALL_DEFINE1(brk, unsigned long, brk)  
  191. ./mm/nommu.c:SYSCALL_DEFINE6(mmap_pgoff, unsigned long, addr, unsigned long, len,  
  192. ./mm/nommu.c:SYSCALL_DEFINE1(old_mmap, struct mmap_arg_struct __user *, arg)  
  193. ./mm/nommu.c:SYSCALL_DEFINE2(munmap, unsigned long, addr, size_t, len)  
  194. ./mm/nommu.c:SYSCALL_DEFINE5(mremap, unsigned long, addr, unsigned long, old_len,  
  195. ./mm/migrate.c:SYSCALL_DEFINE6(move_pages, pid_t, pid, unsigned long, nr_pages,  
  196. ./mm/mempolicy.c:SYSCALL_DEFINE6(mbind, unsigned long, start, unsigned long, len,  
  197. ./mm/mempolicy.c:SYSCALL_DEFINE3(set_mempolicy, int, mode, unsigned long __user *, nmask,  
  198. ./mm/mempolicy.c:SYSCALL_DEFINE4(migrate_pages, pid_t, pid, unsigned long, maxnode,  
  199. ./mm/mempolicy.c:SYSCALL_DEFINE5(get_mempolicy, int __user *, policy,  
  200. ./mm/mprotect.c:SYSCALL_DEFINE3(mprotect, unsigned long, start, size_t, len,  
  201. ./mm/mmap.c:SYSCALL_DEFINE1(brk, unsigned long, brk)  
  202. ./mm/mmap.c:SYSCALL_DEFINE6(mmap_pgoff, unsigned long, addr, unsigned long, len,  
  203. ./mm/mmap.c:SYSCALL_DEFINE1(old_mmap, struct mmap_arg_struct __user *, arg)  
  204. ./mm/mmap.c:SYSCALL_DEFINE2(munmap, unsigned long, addr, size_t, len)  
  205. ./arch/sparc/kernel/sys_sparc32.c:COMPAT_SYSCALL_DEFINE3(sparc_sigaction, int, sig,  
  206. ./arch/sparc/kernel/sys_sparc32.c:COMPAT_SYSCALL_DEFINE5(rt_sigaction, int, sig,  
  207. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE1(sparc_pipe_real, struct pt_regs *, regs)  
  208. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE6(sparc_ipc, unsigned int, call, int, first, unsigned long, second,  
  209. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE1(sparc64_personality, unsigned long, personality)  
  210. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,  
  211. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE2(64_munmap, unsigned long, addr, size_t, len)  
  212. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE5(64_mremap, unsigned long, addr,   unsigned long, old_len,  
  213. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE2(getdomainname, char __user *, name, int, len)  
  214. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE5(utrap_install, utrap_entry_t, type,  
  215. ./arch/sparc/kernel/sys_sparc_64.c:SYSCALL_DEFINE5(rt_sigaction, int, sig, const struct sigaction __user *, act,  
  216. ./arch/sparc/kernel/sys_sparc_32.c:SYSCALL_DEFINE3(sparc_sigaction, int, sig,  
  217. ./arch/sparc/kernel/sys_sparc_32.c:SYSCALL_DEFINE5(rt_sigaction, int, sig,  
  218. ./arch/tile/kernel/signal.c:SYSCALL_DEFINE0(rt_sigreturn)  
  219. ./arch/tile/kernel/sys.c:SYSCALL_DEFINE3(cacheflush, unsigned long, addr, unsigned long, len,  
  220. ./arch/tile/kernel/sys.c:SYSCALL_DEFINE6(mmap2, unsigned long, addr, unsigned long, len,  
  221. ./arch/tile/kernel/sys.c:SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,  
  222. ./arch/tile/kernel/compat.c:COMPAT_SYSCALL_DEFINE4(truncate64, char __user *, filename, u32, dummy,  
  223. ./arch/tile/kernel/compat.c:COMPAT_SYSCALL_DEFINE4(ftruncate64, unsigned int, fd, u32, dummy,  
  224. ./arch/tile/kernel/compat.c:COMPAT_SYSCALL_DEFINE6(pread64, unsigned int, fd, char __user *, ubuf,  
  225. ./arch/tile/kernel/compat.c:COMPAT_SYSCALL_DEFINE6(pwrite64, unsigned int, fd, char __user *, ubuf,  
  226. ./arch/tile/kernel/compat.c:COMPAT_SYSCALL_DEFINE6(sync_file_range2, int, fd, unsigned int, flags,  
  227. ./arch/tile/kernel/compat.c:COMPAT_SYSCALL_DEFINE6(fallocate, int, fd, int, mode,  
  228. ./arch/tile/kernel/compat.c:COMPAT_SYSCALL_DEFINE5(llseek, unsigned int, fd, unsigned int, offset_high,  
  229. ./arch/tile/mm/fault.c:SYSCALL_DEFINE1(cmpxchg_badaddr, unsigned long, address)  
  230. ./arch/x86/um/tls_32.c:SYSCALL_DEFINE1(set_thread_area, struct user_desc __user *, user_desc)  
  231. ./arch/x86/um/tls_32.c:SYSCALL_DEFINE1(get_thread_area, struct user_desc __user *, user_desc)  
  232. ./arch/x86/kernel/vm86_32.c:SYSCALL_DEFINE1(vm86old, struct vm86_struct __user *, v86)  
  233. ./arch/x86/kernel/vm86_32.c:SYSCALL_DEFINE2(vm86, unsigned long, cmd, unsigned long, arg)  
  234. ./arch/x86/kernel/sys_x86_64.c:SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,  
  235. ./arch/x86/kernel/tls.c:SYSCALL_DEFINE1(set_thread_area, struct user_desc __user *, u_info)  
  236. ./arch/x86/kernel/tls.c:SYSCALL_DEFINE1(get_thread_area, struct user_desc __user *, u_info)  
  237. ./arch/x86/kernel/ioport.c:SYSCALL_DEFINE1(iopl, unsigned int, level)  
  238. grep: 2: No such file or directory  
  239. ./arch/powerpc/platforms/cell/spu_syscalls.c:SYSCALL_DEFINE4(spu_create, const char __user *, name, unsigned int, flags,  
  240. ./arch/mips/kernel/signal.c:SYSCALL_DEFINE1(sigsuspend, sigset_t __user *, uset)  
  241. ./arch/mips/kernel/signal.c:SYSCALL_DEFINE3(sigaction, int, sig, const struct sigaction __user *, act,  
  242. ./arch/mips/kernel/signal32.c:SYSCALL_DEFINE3(32_sigaction, long, sig, const struct compat_sigaction __user *, act,  
  243. ./arch/mips/kernel/syscall.c:SYSCALL_DEFINE6(mips_mmap, unsigned long, addr, unsigned long, len,  
  244. ./arch/mips/kernel/syscall.c:SYSCALL_DEFINE6(mips_mmap2, unsigned long, addr, unsigned long, len,  
  245. ./arch/mips/kernel/syscall.c:SYSCALL_DEFINE1(set_thread_area, unsigned long, addr)  
  246. ./arch/mips/kernel/syscall.c:SYSCALL_DEFINE3(sysmips, long, cmd, long, arg1, long, arg2)  
  247. ./arch/mips/kernel/syscall.c:SYSCALL_DEFINE3(cachectl, char *, addr, int, nbytes, int, op)  
  248. ./arch/mips/kernel/linux32.c:SYSCALL_DEFINE6(32_mmap2, unsigned long, addr, unsigned long, len,  
  249. ./arch/mips/kernel/linux32.c:SYSCALL_DEFINE4(32_truncate64, const char __user *, path,  
  250. ./arch/mips/kernel/linux32.c:SYSCALL_DEFINE4(32_ftruncate64, unsigned long, fd, unsigned long, __dummy,  
  251. ./arch/mips/kernel/linux32.c:SYSCALL_DEFINE5(32_llseek, unsigned int, fd, unsigned int, offset_high,  
  252. ./arch/mips/kernel/linux32.c:SYSCALL_DEFINE6(32_pread, unsigned long, fd, char __user *, buf, size_t, count,  
  253. ./arch/mips/kernel/linux32.c:SYSCALL_DEFINE6(32_pwrite, unsigned int, fd, const char __user *, buf,  
  254. ./arch/mips/kernel/linux32.c:SYSCALL_DEFINE1(32_personality, unsigned long, personality)  
  255. ./arch/mips/mm/cache.c:SYSCALL_DEFINE3(cacheflush, unsigned long, addr, unsigned long, bytes,  
  256. ./arch/s390/kernel/signal.c:SYSCALL_DEFINE0(sigreturn)  
  257. ./arch/s390/kernel/signal.c:SYSCALL_DEFINE0(rt_sigreturn)  
  258. ./arch/s390/kernel/sys_s390.c:SYSCALL_DEFINE1(mmap2, struct s390_mmap_arg_struct __user *, arg)  
  259. ./arch/s390/kernel/sys_s390.c:SYSCALL_DEFINE5(s390_ipc, uint, call, int, first, unsigned long, second,  
  260. ./arch/s390/kernel/sys_s390.c:SYSCALL_DEFINE1(s390_personality, unsigned int, personality)  
  261. ./arch/s390/kernel/sys_s390.c:SYSCALL_DEFINE5(s390_fadvise64, int, fd, u32, offset_high, u32, offset_low,  
  262. ./arch/s390/kernel/sys_s390.c:SYSCALL_DEFINE1(s390_fadvise64_64, struct fadvise64_64_args __user *, args)  
  263. ./arch/s390/kernel/sys_s390.c:SYSCALL_DEFINE5(s390_fallocate, int, fd, int, mode, loff_t, offset,  
  264. ./arch/s390/kernel/runtime_instr.c:SYSCALL_DEFINE2(s390_runtime_instr, int, command, int, signum)  
  265. ./arch/s390/kernel/compat_linux.c:COMPAT_SYSCALL_DEFINE5(s390_ipc, uint, call, int, first, unsigned long, second,  
  266. ./arch/blackfin/kernel/sys_bfin.c:SYSCALL_DEFINE3(cacheflush, unsigned long, addr, unsigned long, len, int, op)  
  267. ./arch/arc/kernel/signal.c:SYSCALL_DEFINE0(rt_sigreturn)  
  268. ./arch/arc/kernel/process.c:SYSCALL_DEFINE1(arc_settls, void *, user_tls_data_ptr)  
  269. ./arch/arc/kernel/process.c:SYSCALL_DEFINE0(arc_gettls)  
  270. ./arch/arc/mm/cache_arc700.c:SYSCALL_DEFINE3(cacheflush, uint32_t, start, uint32_t, sz, uint32_t, flags)  
  271. ./arch/alpha/kernel/signal.c:SYSCALL_DEFINE2(osf_sigprocmask, int, how, unsigned long, newmask)  
  272. ./arch/alpha/kernel/signal.c:SYSCALL_DEFINE3(osf_sigaction, int, sig,  
  273. ./arch/alpha/kernel/signal.c:SYSCALL_DEFINE5(rt_sigaction, int, sig, const struct sigaction __user *, act,  
  274. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE1(osf_brk, unsigned long, brk)  
  275. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE4(osf_set_program_attributes, unsigned long, text_start,  
  276. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE4(osf_getdirentries, unsigned int, fd,  
  277. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE6(osf_mmap, unsigned long, addr, unsigned long, len,  
  278. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_statfs, const char __user *, pathname,  
  279. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_stat, char __user *, name, struct osf_stat __user *, buf)  
  280. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_lstat, char __user *, name, struct osf_stat __user *, buf)  
  281. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_fstat, int, fd, struct osf_stat __user *, buf)  
  282. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_fstatfs, unsigned long, fd,  
  283. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_statfs64, char __user *, pathname,  
  284. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_fstatfs64, unsigned long, fd,  
  285. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE4(osf_mount, unsigned long, typenr, const char __user *, path,  
  286. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE1(osf_utsname, char __user *, name)  
  287. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE0(getpagesize)  
  288. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE0(getdtablesize)  
  289. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_getdomainname, char __user *, name, int, namelen)  
  290. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_proplist_syscall, enum pl_code, code,  
  291. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_sigstack, struct sigstack __user *, uss,  
  292. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_sysinfo, int, command, char __user *, buf, long, count)  
  293. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE5(osf_getsysinfo, unsigned long, op, void __user *, buffer,  
  294. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE5(osf_setsysinfo, unsigned long, op, void __user *, buffer,  
  295. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_gettimeofday, struct timeval32 __user *, tv,  
  296. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_settimeofday, struct timeval32 __user *, tv,  
  297. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_getitimer, int, which, struct itimerval32 __user *, it)  
  298. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_setitimer, int, which, struct itimerval32 __user *, in,  
  299. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_utimes, const char __user *, filename,  
  300. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE5(osf_select, int, n, fd_set __user *, inp, fd_set __user *, outp,  
  301. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_getrusage, int, who, struct rusage32 __user *, ru)  
  302. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE4(osf_wait4, pid_t, pid, int __user *, ustatus, int, options,  
  303. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_usleep_thread, struct timeval32 __user *, sleep,  
  304. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE1(old_adjtimex, struct timex32 __user *, txc_p)  
  305. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_readv, unsigned long, fd,  
  306. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE3(osf_writev, unsigned long, fd,  
  307. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE2(osf_getpriority, int, which, int, who)  
  308. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE0(getxuid)  
  309. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE0(getxgid)  
  310. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE0(getxpid)  
  311. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE0(alpha_pipe)  
  312. ./arch/alpha/kernel/osf_sys.c:SYSCALL_DEFINE1(sethae, unsigned long, val)  
  313. ./ipc/mqueue.c:SYSCALL_DEFINE4(mq_open, const char __user *, u_name, int, oflag, umode_t, mode,  
  314. ./ipc/mqueue.c:SYSCALL_DEFINE1(mq_unlink, const char __user *, u_name)  
  315. ./ipc/mqueue.c:SYSCALL_DEFINE5(mq_timedsend, mqd_t, mqdes, const char __user *, u_msg_ptr,  
  316. ./ipc/mqueue.c:SYSCALL_DEFINE5(mq_timedreceive, mqd_t, mqdes, char __user *, u_msg_ptr,  
  317. ./ipc/mqueue.c:SYSCALL_DEFINE2(mq_notify, mqd_t, mqdes,  
  318. ./ipc/mqueue.c:SYSCALL_DEFINE3(mq_getsetattr, mqd_t, mqdes,  
  319. ./ipc/sem.c:SYSCALL_DEFINE3(semget, key_t, key, int, nsems, int, semflg)  
  320. ./ipc/sem.c:SYSCALL_DEFINE4(semctl, int, semid, int, semnum, int, cmd, unsigned long, arg)  
  321. ./ipc/sem.c:SYSCALL_DEFINE4(semtimedop, int, semid, struct sembuf __user *, tsops,  
  322. ./ipc/sem.c:SYSCALL_DEFINE3(semop, int, semid, struct sembuf __user *, tsops,  
  323. ./ipc/msg.c:SYSCALL_DEFINE2(msgget, key_t, key, int, msgflg)  
  324. ./ipc/msg.c:SYSCALL_DEFINE3(msgctl, int, msqid, int, cmd, struct msqid_ds __user *, buf)  
  325. ./ipc/msg.c:SYSCALL_DEFINE4(msgsnd, int, msqid, struct msgbuf __user *, msgp, size_t, msgsz,  
  326. ./ipc/msg.c:SYSCALL_DEFINE5(msgrcv, int, msqid, struct msgbuf __user *, msgp, size_t, msgsz,  
  327. ./ipc/shm.c:SYSCALL_DEFINE3(shmget, key_t, key, size_t, size, int, shmflg)  
  328. ./ipc/shm.c:SYSCALL_DEFINE3(shmctl, int, shmid, int, cmd, struct shmid_ds __user *, buf)  
  329. ./ipc/shm.c:SYSCALL_DEFINE3(shmat, int, shmid, char __user *, shmaddr, int, shmflg)  
  330. ./ipc/shm.c:SYSCALL_DEFINE1(shmdt, char __user *, shmaddr)  
  331. ./ipc/syscall.c:SYSCALL_DEFINE6(ipc, unsigned int, call, int, first, unsigned long, second,  
  332. ./ipc/compat.c:COMPAT_SYSCALL_DEFINE6(ipc, u32, call, int, first, int, second,  
  333. ./ipc/compat.c:COMPAT_SYSCALL_DEFINE4(semctl, int, semid, int, semnum, int, cmd, int, arg)  
  334. ./ipc/compat.c:COMPAT_SYSCALL_DEFINE4(msgsnd, int, msqid, compat_uptr_t, msgp,  
  335. ./ipc/compat.c:COMPAT_SYSCALL_DEFINE5(msgrcv, int, msqid, compat_uptr_t, msgp,  
  336. ./ipc/compat.c:COMPAT_SYSCALL_DEFINE3(shmat, int, shmid, compat_uptr_t, shmaddr, int, shmflg)  
  337. ./fs/statfs.c:SYSCALL_DEFINE2(statfs, const char __user *, pathname, struct statfs __user *, buf)  
  338. ./fs/statfs.c:SYSCALL_DEFINE3(statfs64, const char __user *, pathname, size_t, sz, struct statfs64 __user *, buf)  
  339. ./fs/statfs.c:SYSCALL_DEFINE2(fstatfs, unsigned int, fd, struct statfs __user *, buf)  
  340. ./fs/statfs.c:SYSCALL_DEFINE3(fstatfs64, unsigned int, fd, size_t, sz, struct statfs64 __user *, buf)  
  341. ./fs/statfs.c:SYSCALL_DEFINE2(ustat, unsigned, dev, struct ustat __user *, ubuf)  
  342. ./fs/namei.c:SYSCALL_DEFINE4(mknodat, int, dfd, const char __user *, filename, umode_t, mode,  
  343. ./fs/namei.c:SYSCALL_DEFINE3(mknod, const char __user *, filename, umode_t, mode, unsigned, dev)  
  344. ./fs/namei.c:SYSCALL_DEFINE3(mkdirat, int, dfd, const char __user *, pathname, umode_t, mode)  
  345. ./fs/namei.c:SYSCALL_DEFINE2(mkdir, const char __user *, pathname, umode_t, mode)  
  346. ./fs/namei.c:SYSCALL_DEFINE1(rmdir, const char __user *, pathname)  
  347. ./fs/namei.c:SYSCALL_DEFINE3(unlinkat, int, dfd, const char __user *, pathname, int, flag)  
  348. ./fs/namei.c:SYSCALL_DEFINE1(unlink, const char __user *, pathname)  
  349. ./fs/namei.c:SYSCALL_DEFINE3(symlinkat, const char __user *, oldname,  
  350. ./fs/namei.c:SYSCALL_DEFINE2(symlink, const char __user *, oldname, const char __user *, newname)  
  351. ./fs/namei.c:SYSCALL_DEFINE5(linkat, int, olddfd, const char __user *, oldname,  
  352. ./fs/namei.c:SYSCALL_DEFINE2(link, const char __user *, oldname, const char __user *, newname)  
  353. ./fs/namei.c:SYSCALL_DEFINE4(renameat, int, olddfd, const char __user *, oldname,  
  354. ./fs/namei.c:SYSCALL_DEFINE2(rename, const char __user *, oldname, const char __user *, newname)  
  355. ./fs/pipe.c:SYSCALL_DEFINE2(pipe2, int __user *, fildes, int, flags)  
  356. ./fs/pipe.c:SYSCALL_DEFINE1(pipe, int __user *, fildes)  
  357. ./fs/open.c:SYSCALL_DEFINE2(truncate, const char __user *, path, long, length)  
  358. ./fs/open.c:COMPAT_SYSCALL_DEFINE2(truncate, const char __user *, path, compat_off_t, length)  
  359. ./fs/open.c:SYSCALL_DEFINE2(ftruncate, unsigned int, fd, unsigned long, length)  
  360. ./fs/open.c:COMPAT_SYSCALL_DEFINE2(ftruncate, unsigned int, fd, compat_ulong_t, length)  
  361. ./fs/open.c:SYSCALL_DEFINE2(truncate64, const char __user *, path, loff_t, length)  
  362. ./fs/open.c:SYSCALL_DEFINE2(ftruncate64, unsigned int, fd, loff_t, length)  
  363. ./fs/open.c:SYSCALL_DEFINE4(fallocate, int, fd, int, mode, loff_t, offset, loff_t, len)  
  364. ./fs/open.c:SYSCALL_DEFINE3(faccessat, int, dfd, const char __user *, filename, int, mode)  
  365. ./fs/open.c:SYSCALL_DEFINE2(access, const char __user *, filename, int, mode)  
  366. ./fs/open.c:SYSCALL_DEFINE1(chdir, const char __user *, filename)  
  367. ./fs/open.c:SYSCALL_DEFINE1(fchdir, unsigned int, fd)  
  368. ./fs/open.c:SYSCALL_DEFINE1(chroot, const char __user *, filename)  
  369. ./fs/open.c:SYSCALL_DEFINE2(fchmod, unsigned int, fd, umode_t, mode)  
  370. ./fs/open.c:SYSCALL_DEFINE3(fchmodat, int, dfd, const char __user *, filename, umode_t, mode)  
  371. ./fs/open.c:SYSCALL_DEFINE2(chmod, const char __user *, filename, umode_t, mode)  
  372. ./fs/open.c:SYSCALL_DEFINE5(fchownat, int, dfd, const char __user *, filename, uid_t, user,  
  373. ./fs/open.c:SYSCALL_DEFINE3(chown, const char __user *, filename, uid_t, user, gid_t, group)  
  374. ./fs/open.c:SYSCALL_DEFINE3(lchown, const char __user *, filename, uid_t, user, gid_t, group)  
  375. ./fs/open.c:SYSCALL_DEFINE3(fchown, unsigned int, fd, uid_t, user, gid_t, group)  
  376. ./fs/open.c:SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode)  
  377. ./fs/open.c:SYSCALL_DEFINE4(openat, int, dfd, const char __user *, filename, int, flags,  
  378. ./fs/open.c:SYSCALL_DEFINE2(creat, const char __user *, pathname, umode_t, mode)  
  379. ./fs/open.c:SYSCALL_DEFINE1(close, unsigned int, fd)  
  380. ./fs/open.c:SYSCALL_DEFINE0(vhangup)  
  381. ./fs/timerfd.c:SYSCALL_DEFINE2(timerfd_create, int, clockid, int, flags)  
  382. ./fs/timerfd.c:SYSCALL_DEFINE4(timerfd_settime, int, ufd, int, flags,  
  383. ./fs/timerfd.c:SYSCALL_DEFINE2(timerfd_gettime, int, ufd, struct itimerspec __user *, otmr)  
  384. ./fs/timerfd.c:COMPAT_SYSCALL_DEFINE4(timerfd_settime, int, ufd, int, flags,  
  385. ./fs/timerfd.c:COMPAT_SYSCALL_DEFINE2(timerfd_gettime, int, ufd,  
  386. ./fs/buffer.c:SYSCALL_DEFINE2(bdflush, int, func, long, data)  
  387. ./fs/filesystems.c:SYSCALL_DEFINE3(sysfs, int, option, unsigned long, arg1, unsigned long, arg2)  
  388. ./fs/aio.c:SYSCALL_DEFINE2(io_setup, unsigned, nr_events, aio_context_t __user *, ctxp)  
  389. ./fs/aio.c:SYSCALL_DEFINE1(io_destroy, aio_context_t, ctx)  
  390. ./fs/aio.c:SYSCALL_DEFINE3(io_submit, aio_context_t, ctx_id, long, nr,  
  391. ./fs/aio.c:SYSCALL_DEFINE3(io_cancel, aio_context_t, ctx_id, struct iocb __user *, iocb,  
  392. ./fs/aio.c:SYSCALL_DEFINE5(io_getevents, aio_context_t, ctx_id,  
  393. ./fs/dcookies.c:SYSCALL_DEFINE3(lookup_dcookie, u64, cookie64, char __user *, buf, size_t, len)  
  394. ./fs/dcookies.c:COMPAT_SYSCALL_DEFINE4(lookup_dcookie, u32, w0, u32, w1, char __user *, buf, size_t, len)  
  395. ./fs/utimes.c:SYSCALL_DEFINE2(utime, char __user *, filename, struct utimbuf __user *, times)  
  396. ./fs/utimes.c:SYSCALL_DEFINE4(utimensat, int, dfd, const char __user *, filename,  
  397. ./fs/utimes.c:SYSCALL_DEFINE3(futimesat, int, dfd, const char __user *, filename,  
  398. ./fs/utimes.c:SYSCALL_DEFINE2(utimes, char __user *, filename,  
  399. ./fs/signalfd.c:SYSCALL_DEFINE4(signalfd4, int, ufd, sigset_t __user *, user_mask,  
  400. ./fs/signalfd.c:SYSCALL_DEFINE3(signalfd, int, ufd, sigset_t __user *, user_mask,  
  401. ./fs/signalfd.c:COMPAT_SYSCALL_DEFINE4(signalfd4, int, ufd,  
  402. ./fs/signalfd.c:COMPAT_SYSCALL_DEFINE3(signalfd, int, ufd,  
  403. ./fs/fhandle.c:SYSCALL_DEFINE5(name_to_handle_at, int, dfd, const char __user *, name,  
  404. ./fs/fhandle.c:SYSCALL_DEFINE3(open_by_handle_at, int, mountdirfd,  
  405. ./fs/read_write.c:SYSCALL_DEFINE3(lseek, unsigned int, fd, off_t, offset, unsigned int, whence)  
  406. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE3(lseek, unsigned int, fd, compat_off_t, offset, unsigned int, whence)  
  407. ./fs/read_write.c:SYSCALL_DEFINE5(llseek, unsigned int, fd, unsigned long, offset_high,  
  408. ./fs/read_write.c:SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count)  
  409. ./fs/read_write.c:SYSCALL_DEFINE3(write, unsigned int, fd, const char __user *, buf,  
  410. ./fs/read_write.c:SYSCALL_DEFINE4(pread64, unsigned int, fd, char __user *, buf,  
  411. ./fs/read_write.c:SYSCALL_DEFINE4(pwrite64, unsigned int, fd, const char __user *, buf,  
  412. ./fs/read_write.c:SYSCALL_DEFINE3(readv, unsigned long, fd, const struct iovec __user *, vec,  
  413. ./fs/read_write.c:SYSCALL_DEFINE3(writev, unsigned long, fd, const struct iovec __user *, vec,  
  414. ./fs/read_write.c:SYSCALL_DEFINE5(preadv, unsigned long, fd, const struct iovec __user *, vec,  
  415. ./fs/read_write.c:SYSCALL_DEFINE5(pwritev, unsigned long, fd, const struct iovec __user *, vec,  
  416. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE3(readv, unsigned long, fd,  
  417. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE4(preadv64, unsigned long, fd,  
  418. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE5(preadv, unsigned long, fd,  
  419. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE3(writev, unsigned long, fd,  
  420. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE4(pwritev64, unsigned long, fd,  
  421. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE5(pwritev, unsigned long, fd,  
  422. ./fs/read_write.c:SYSCALL_DEFINE4(sendfile, int, out_fd, int, in_fd, off_t __user *, offset, size_t, count)  
  423. ./fs/read_write.c:SYSCALL_DEFINE4(sendfile64, int, out_fd, int, in_fd, loff_t __user *, offset, size_t, count)  
  424. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE4(sendfile, int, out_fd, int, in_fd,  
  425. ./fs/read_write.c:COMPAT_SYSCALL_DEFINE4(sendfile64, int, out_fd, int, in_fd,  
  426. ./fs/file.c:SYSCALL_DEFINE3(dup3, unsigned int, oldfd, unsigned int, newfd, int, flags)  
  427. ./fs/file.c:SYSCALL_DEFINE2(dup2, unsigned int, oldfd, unsigned int, newfd)  
  428. ./fs/file.c:SYSCALL_DEFINE1(dup, unsigned int, fildes)  
  429. ./fs/ioprio.c:SYSCALL_DEFINE3(ioprio_set, int, which, int, who, int, ioprio)  
  430. ./fs/ioprio.c:SYSCALL_DEFINE2(ioprio_get, int, which, int, who)  
  431. ./fs/exec.c:SYSCALL_DEFINE1(uselib, const char __user *, library)  
  432. ./fs/exec.c:SYSCALL_DEFINE3(execve,  
  433. ./fs/dcache.c:SYSCALL_DEFINE2(getcwd, char __user *, buf, unsigned long, size)  
  434. ./fs/eventfd.c:SYSCALL_DEFINE2(eventfd2, unsigned int, count, int, flags)  
  435. ./fs/eventfd.c:SYSCALL_DEFINE1(eventfd, unsigned int, count)  
  436. ./fs/ioctl.c:SYSCALL_DEFINE3(ioctl, unsigned int, fd, unsigned int, cmd, unsigned long, arg)  
  437. ./fs/splice.c:SYSCALL_DEFINE4(vmsplice, int, fd, const struct iovec __user *, iov,  
  438. ./fs/splice.c:COMPAT_SYSCALL_DEFINE4(vmsplice, int, fd, const struct compat_iovec __user *, iov32,  
  439. ./fs/splice.c:SYSCALL_DEFINE6(splice, int, fd_in, loff_t __user *, off_in,  
  440. ./fs/splice.c:SYSCALL_DEFINE4(tee, int, fdin, int, fdout, size_t, len, unsigned int, flags)  
  441. ./fs/namespace.c:SYSCALL_DEFINE2(umount, char __user *, name, int, flags)  
  442. ./fs/namespace.c:SYSCALL_DEFINE1(oldumount, char __user *, name)  
  443. ./fs/namespace.c:SYSCALL_DEFINE5(mount, char __user *, dev_name, char __user *, dir_name,  
  444. ./fs/namespace.c:SYSCALL_DEFINE2(pivot_root, const char __user *, new_root,  
  445. ./fs/fcntl.c:SYSCALL_DEFINE3(fcntl, unsigned int, fd, unsigned int, cmd, unsigned long, arg)  
  446. ./fs/fcntl.c:SYSCALL_DEFINE3(fcntl64, unsigned int, fd, unsigned int, cmd,  
  447. grep: 2: No such file or directory  
  448. ./fs/stat.c:SYSCALL_DEFINE2(stat, const char __user *, filename,  
  449. ./fs/stat.c:SYSCALL_DEFINE2(lstat, const char __user *, filename,  
  450. ./fs/stat.c:SYSCALL_DEFINE2(fstat, unsigned int, fd, struct __old_kernel_stat __user *, statbuf)  
  451. ./fs/stat.c:SYSCALL_DEFINE2(newstat, const char __user *, filename,  
  452. ./fs/stat.c:SYSCALL_DEFINE2(newlstat, const char __user *, filename,  
  453. ./fs/stat.c:SYSCALL_DEFINE4(newfstatat, int, dfd, const char __user *, filename,  
  454. ./fs/stat.c:SYSCALL_DEFINE2(newfstat, unsigned int, fd, struct stat __user *, statbuf)  
  455. ./fs/stat.c:SYSCALL_DEFINE4(readlinkat, int, dfd, const char __user *, pathname,  
  456. ./fs/stat.c:SYSCALL_DEFINE3(readlink, const char __user *, path, char __user *, buf,  
  457. ./fs/stat.c:SYSCALL_DEFINE2(stat64, const char __user *, filename,  
  458. ./fs/stat.c:SYSCALL_DEFINE2(lstat64, const char __user *, filename,  
  459. ./fs/stat.c:SYSCALL_DEFINE2(fstat64, unsigned long, fd, struct stat64 __user *, statbuf)  
  460. ./fs/stat.c:SYSCALL_DEFINE4(fstatat64, int, dfd, const char __user *, filename,  
  461. ./fs/xattr.c:SYSCALL_DEFINE5(setxattr, const char __user *, pathname,  
  462. ./fs/xattr.c:SYSCALL_DEFINE5(lsetxattr, const char __user *, pathname,  
  463. ./fs/xattr.c:SYSCALL_DEFINE5(fsetxattr, int, fd, const char __user *, name,  
  464. ./fs/xattr.c:SYSCALL_DEFINE4(getxattr, const char __user *, pathname,  
  465. ./fs/xattr.c:SYSCALL_DEFINE4(lgetxattr, const char __user *, pathname,  
  466. ./fs/xattr.c:SYSCALL_DEFINE4(fgetxattr, int, fd, const char __user *, name,  
  467. ./fs/xattr.c:SYSCALL_DEFINE3(listxattr, const char __user *, pathname, char __user *, list,  
  468. ./fs/xattr.c:SYSCALL_DEFINE3(llistxattr, const char __user *, pathname, char __user *, list,  
  469. ./fs/xattr.c:SYSCALL_DEFINE3(flistxattr, int, fd, char __user *, list, size_t, size)  
  470. ./fs/xattr.c:SYSCALL_DEFINE2(removexattr, const char __user *, pathname,  
  471. ./fs/xattr.c:SYSCALL_DEFINE2(lremovexattr, const char __user *, pathname,  
  472. ./fs/xattr.c:SYSCALL_DEFINE2(fremovexattr, int, fd, const char __user *, name)  
  473. ./fs/sync.c:SYSCALL_DEFINE0(sync)  
  474. ./fs/sync.c:SYSCALL_DEFINE1(syncfs, int, fd)  
  475. ./fs/sync.c:SYSCALL_DEFINE1(fsync, unsigned int, fd)  
  476. ./fs/sync.c:SYSCALL_DEFINE1(fdatasync, unsigned int, fd)  
  477. ./fs/sync.c:SYSCALL_DEFINE4(sync_file_range, int, fd, loff_t, offset, loff_t, nbytes,  
  478. ./fs/sync.c:SYSCALL_DEFINE4(sync_file_range2, int, fd, unsigned int, flags,  
  479. ./fs/readdir.c:SYSCALL_DEFINE3(old_readdir, unsigned int, fd,  
  480. ./fs/readdir.c:SYSCALL_DEFINE3(getdents, unsigned int, fd,  
  481. ./fs/readdir.c:SYSCALL_DEFINE3(getdents64, unsigned int, fd,  
  482. ./fs/notify/fanotify/fanotify_user.c:SYSCALL_DEFINE2(fanotify_init, unsigned int, flags, unsigned int, event_f_flags)  
  483. ./fs/notify/fanotify/fanotify_user.c:SYSCALL_DEFINE5(fanotify_mark, int, fanotify_fd, unsigned int, flags,  
  484. ./fs/notify/fanotify/fanotify_user.c:COMPAT_SYSCALL_DEFINE6(fanotify_mark,  
  485. ./fs/notify/inotify/inotify_user.c:SYSCALL_DEFINE1(inotify_init1, int, flags)  
  486. ./fs/notify/inotify/inotify_user.c:SYSCALL_DEFINE0(inotify_init)  
  487. ./fs/notify/inotify/inotify_user.c:SYSCALL_DEFINE3(inotify_add_watch, int, fd, const char __user *, pathname,  
  488. ./fs/notify/inotify/inotify_user.c:SYSCALL_DEFINE2(inotify_rm_watch, int, fd, __s32, wd)  
  489. ./fs/eventpoll.c:SYSCALL_DEFINE1(epoll_create1, int, flags)  
  490. ./fs/eventpoll.c:SYSCALL_DEFINE1(epoll_create, int, size)  
  491. ./fs/eventpoll.c:SYSCALL_DEFINE4(epoll_ctl, int, epfd, int, op, int, fd,  
  492. ./fs/eventpoll.c:SYSCALL_DEFINE4(epoll_wait, int, epfd, struct epoll_event __user *, events,  
  493. ./fs/eventpoll.c:SYSCALL_DEFINE6(epoll_pwait, int, epfd, struct epoll_event __user *, events,  
  494. ./fs/eventpoll.c:COMPAT_SYSCALL_DEFINE6(epoll_pwait, int, epfd,  
  495. ./fs/select.c:SYSCALL_DEFINE5(select, int, n, fd_set __user *, inp, fd_set __user *, outp,  
  496. ./fs/select.c:SYSCALL_DEFINE6(pselect6, int, n, fd_set __user *, inp, fd_set __user *, outp,  
  497. ./fs/select.c:SYSCALL_DEFINE1(old_select, struct sel_arg_struct __user *, arg)  
  498. ./fs/select.c:SYSCALL_DEFINE3(poll, struct pollfd __user *, ufds, unsigned int, nfds,  
  499. ./fs/select.c:SYSCALL_DEFINE5(ppoll, struct pollfd __user *, ufds, unsigned int, nfds,  
  500. ./fs/locks.c:SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd)  
  501. ./fs/quota/quota.c:SYSCALL_DEFINE4(quotactl, unsigned int, cmd, const char __user *, special,  
  502. ./fs/compat.c:COMPAT_SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode)  
  503. ./fs/compat.c:COMPAT_SYSCALL_DEFINE4(openat, int, dfd, const char __user *, filename, int, flags, umode_t, mode)  
  504. ./fs/compat.c:COMPAT_SYSCALL_DEFINE3(open_by_handle_at, int, mountdirfd,  
  505. ./net/socket.c:SYSCALL_DEFINE3(socket, int, family, int, type, int, protocol)  
  506. ./net/socket.c:SYSCALL_DEFINE4(socketpair, int, family, int, type, int, protocol,  
  507. ./net/socket.c:SYSCALL_DEFINE3(bind, int, fd, struct sockaddr __user *, umyaddr, int, addrlen)  
  508. ./net/socket.c:SYSCALL_DEFINE2(listen, int, fd, int, backlog)  
  509. ./net/socket.c:SYSCALL_DEFINE4(accept4, int, fd, struct sockaddr __user *, upeer_sockaddr,  
  510. ./net/socket.c:SYSCALL_DEFINE3(accept, int, fd, struct sockaddr __user *, upeer_sockaddr,  
  511. ./net/socket.c:SYSCALL_DEFINE3(connect, int, fd, struct sockaddr __user *, uservaddr,  
  512. ./net/socket.c:SYSCALL_DEFINE3(getsockname, int, fd, struct sockaddr __user *, usockaddr,  
  513. ./net/socket.c:SYSCALL_DEFINE3(getpeername, int, fd, struct sockaddr __user *, usockaddr,  
  514. ./net/socket.c:SYSCALL_DEFINE6(sendto, int, fd, void __user *, buff, size_t, len,  
  515. ./net/socket.c:SYSCALL_DEFINE4(send, int, fd, void __user *, buff, size_t, len,  
  516. ./net/socket.c:SYSCALL_DEFINE6(recvfrom, int, fd, void __user *, ubuf, size_t, size,  
  517. ./net/socket.c:SYSCALL_DEFINE5(setsockopt, int, fd, int, level, int, optname,  
  518. ./net/socket.c:SYSCALL_DEFINE5(getsockopt, int, fd, int, level, int, optname,  
  519. ./net/socket.c:SYSCALL_DEFINE2(shutdown, int, fd, int, how)  
  520. ./net/socket.c:SYSCALL_DEFINE3(sendmsg, int, fd, struct msghdr __user *, msg, unsigned int, flags)  
  521. ./net/socket.c:SYSCALL_DEFINE4(sendmmsg, int, fd, struct mmsghdr __user *, mmsg,  
  522. ./net/socket.c:SYSCALL_DEFINE3(recvmsg, int, fd, struct msghdr __user *, msg,  
  523. ./net/socket.c:SYSCALL_DEFINE5(recvmmsg, int, fd, struct mmsghdr __user *, mmsg,  
  524. ./net/socket.c:SYSCALL_DEFINE2(socketcall, int, call, unsigned long __user *, args)  
  525.      

你可能感兴趣的:(android驱动,android系统)