]> git.hungrycats.org Git - linux/commitdiff
Fix futex compile breakage introduced by the compat code.
authorLinus Torvalds <torvalds@home.transmeta.com>
Sat, 15 Feb 2003 04:49:07 +0000 (20:49 -0800)
committerLinus Torvalds <torvalds@home.transmeta.com>
Sat, 15 Feb 2003 04:49:07 +0000 (20:49 -0800)
kernel/fork.c
kernel/futex.c

index 9e12b35e39243b599bfdba76372be6c6b4a84e03..5ecc19a9aab4e8b7f50303af8fbe56f91b304234 100644 (file)
@@ -427,7 +427,7 @@ void mm_release(struct task_struct *tsk, struct mm_struct *mm)
                complete(vfork_done);
        }
        if (tsk->clear_child_tid && atomic_read(&mm->mm_users) > 1) {
-               int * tidptr = tsk->clear_child_tid;
+               u32 * tidptr = tsk->clear_child_tid;
                tsk->clear_child_tid = NULL;
 
                /*
@@ -435,7 +435,7 @@ void mm_release(struct task_struct *tsk, struct mm_struct *mm)
                 * not set up a proper pointer then tough luck.
                 */
                put_user(0, tidptr);
-               sys_futex((unsigned long)tidptr, FUTEX_WAKE, 1, NULL);
+               sys_futex(tidptr, FUTEX_WAKE, 1, NULL);
        }
 }
 
index 9813932a6a0a972d186c774b6dac33867520d120..4cade10892db5509ec2f5a169e02cc779a449b29 100644 (file)
@@ -420,7 +420,7 @@ out:
        return ret;
 }
 
-long do_futex(unsigned long uaddr, int op, int val, unsinged long timeout)
+long do_futex(unsigned long uaddr, int op, int val, unsigned long timeout)
 {
        unsigned long pos_in_page;
        int ret;
@@ -453,11 +453,10 @@ asmlinkage long sys_futex(u32 *uaddr, int op, int val, struct timespec *utime)
        struct timespec t;
        unsigned long timeout = MAX_SCHEDULE_TIMEOUT;
 
-
        if ((op == FUTEX_WAIT) && utime) {
                if (copy_from_user(&t, utime, sizeof(t)) != 0)
                        return -EFAULT;
-               timeout = timespec_to_jiffies(t) + 1;
+               timeout = timespec_to_jiffies(&t) + 1;
        }
        return do_futex((unsigned long)uaddr, op, val, timeout);
 }