]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
System call wrappers part 08
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Wed, 14 Jan 2009 13:14:10 +0000 (14:14 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sun, 18 Jan 2009 18:43:55 +0000 (10:43 -0800)
commit 17da2bd90abf428523de0fb98f7075e00e3ed42e upstream.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
kernel/exit.c
kernel/fork.c
kernel/futex.c
kernel/module.c
kernel/sched.c
kernel/signal.c

index 2f169b207ab592fb7481e96ed807c4cbcddc5e99..10e393b5381bf54161c573fae5f61f65107d1560 100644 (file)
@@ -1755,9 +1755,8 @@ end:
        return retval;
 }
 
-asmlinkage long sys_waitid(int which, pid_t upid,
-                          struct siginfo __user *infop, int options,
-                          struct rusage __user *ru)
+SYSCALL_DEFINE5(waitid, int, which, pid_t, upid, struct siginfo __user *,
+               infop, int, options, struct rusage __user *, ru)
 {
        struct pid *pid = NULL;
        enum pid_type type;
@@ -1834,7 +1833,7 @@ SYSCALL_DEFINE4(wait4, pid_t, upid, int __user *, stat_addr,
  * sys_waitpid() remains for compatibility. waitpid() should be
  * implemented by calling sys_wait4() from libc.a.
  */
-asmlinkage long sys_waitpid(pid_t pid, int __user *stat_addr, int options)
+SYSCALL_DEFINE3(waitpid, pid_t, pid, int __user *, stat_addr, int, options)
 {
        return sys_wait4(pid, stat_addr, options, NULL);
 }
index 495da2e9a8b4d92a1b464b98196228f818c892e7..4fc8b0f183c7297c0b8081b966a26fb0ac52035b 100644 (file)
@@ -894,7 +894,7 @@ static void copy_flags(unsigned long clone_flags, struct task_struct *p)
        clear_freeze_flag(p);
 }
 
-asmlinkage long sys_set_tid_address(int __user *tidptr)
+SYSCALL_DEFINE1(set_tid_address, int __user *, tidptr)
 {
        current->clear_child_tid = tidptr;
 
index 8af10027514bb1cc9cb2702051330e52bf43a533..976c02c4c190ec29a744697a1d68dcb097418a3e 100644 (file)
@@ -2039,9 +2039,9 @@ long do_futex(u32 __user *uaddr, int op, u32 val, ktime_t *timeout,
 }
 
 
-asmlinkage long sys_futex(u32 __user *uaddr, int op, u32 val,
-                         struct timespec __user *utime, u32 __user *uaddr2,
-                         u32 val3)
+SYSCALL_DEFINE6(futex, u32 __user *, uaddr, int, op, u32, val,
+               struct timespec __user *, utime, u32 __user *, uaddr2,
+               u32, val3)
 {
        struct timespec ts;
        ktime_t t, *tp = NULL;
index 1f4cc00e0c200b7c69272694d121558fd6a10d06..79fd4d2c3505a5761a5aa094dbc2eb2be6cf7797 100644 (file)
@@ -743,8 +743,8 @@ static void wait_for_zero_refcount(struct module *mod)
        mutex_lock(&module_mutex);
 }
 
-asmlinkage long
-sys_delete_module(const char __user *name_user, unsigned int flags)
+SYSCALL_DEFINE2(delete_module, const char __user *, name_user,
+               unsigned int, flags)
 {
        struct module *mod;
        char name[MODULE_NAME_LEN];
@@ -2288,10 +2288,8 @@ static noinline struct module *load_module(void __user *umod,
 }
 
 /* This is where the real work happens */
-asmlinkage long
-sys_init_module(void __user *umod,
-               unsigned long len,
-               const char __user *uargs)
+SYSCALL_DEFINE3(init_module, void __user *, umod,
+               unsigned long, len, const char __user *, uargs)
 {
        struct module *mod;
        int ret = 0;
index 641aa8f34bd94971a0a6295eb881783bea6eed50..2c68ec3c227136a5524f2dc59c415ef861958ed2 100644 (file)
@@ -5735,7 +5735,7 @@ SYSCALL_DEFINE1(sched_get_priority_min, int, policy)
  * this syscall writes the default timeslice value of a given process
  * into the user-space timespec buffer. A value of '0' means infinity.
  */
-SYSCALL_DEFINE4(sched_rr_get_interval, pid_t, pid,
+SYSCALL_DEFINE2(sched_rr_get_interval, pid_t, pid,
                struct timespec __user *, interval)
 {
        struct task_struct *p;
index 3f26096c5284a7498d5ee81f47be4317f01e1c35..f2c02da35080d3fb8143c1ceb6975944125f97d3 100644 (file)
@@ -1993,8 +1993,8 @@ int sigprocmask(int how, sigset_t *set, sigset_t *oldset)
        return error;
 }
 
-asmlinkage long
-sys_rt_sigprocmask(int how, sigset_t __user *set, sigset_t __user *oset, size_t sigsetsize)
+SYSCALL_DEFINE4(rt_sigprocmask, int, how, sigset_t __user *, set,
+               sigset_t __user *, oset, size_t, sigsetsize)
 {
        int error = -EINVAL;
        sigset_t old_set, new_set;
@@ -2053,8 +2053,7 @@ out:
        return error;
 }      
 
-asmlinkage long
-sys_rt_sigpending(sigset_t __user *set, size_t sigsetsize)
+SYSCALL_DEFINE2(rt_sigpending, sigset_t __user *, set, size_t, sigsetsize)
 {
        return do_sigpending(set, sigsetsize);
 }
@@ -2125,11 +2124,9 @@ int copy_siginfo_to_user(siginfo_t __user *to, siginfo_t *from)
 
 #endif
 
-asmlinkage long
-sys_rt_sigtimedwait(const sigset_t __user *uthese,
-                   siginfo_t __user *uinfo,
-                   const struct timespec __user *uts,
-                   size_t sigsetsize)
+SYSCALL_DEFINE4(rt_sigtimedwait, const sigset_t __user *, uthese,
+               siginfo_t __user *, uinfo, const struct timespec __user *, uts,
+               size_t, sigsetsize)
 {
        int ret, sig;
        sigset_t these;
@@ -2202,8 +2199,7 @@ sys_rt_sigtimedwait(const sigset_t __user *uthese,
        return ret;
 }
 
-asmlinkage long
-sys_kill(pid_t pid, int sig)
+SYSCALL_DEFINE2(kill, pid_t, pid, int, sig)
 {
        struct siginfo info;