summaryrefslogtreecommitdiff
path: root/kernel/compat.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@nuts.ninka.net>2003-05-25 06:30:35 -0700
committerDavid S. Miller <davem@nuts.ninka.net>2003-05-25 06:30:35 -0700
commit644a24b341c1e5d430f427e437c30b36f8daa5b9 (patch)
treee3ce19cbadf767d5cee8736aac8d16bc57fd5228 /kernel/compat.c
parent1bca132059b5e71afd7ec60dd178f1542cd72feb (diff)
[FUTEX]: Fix kernel/compat.c after requeueing futex changes.
Diffstat (limited to 'kernel/compat.c')
-rw-r--r--kernel/compat.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/kernel/compat.c b/kernel/compat.c
index e0998f98b72b..0dcf84ac1a7d 100644
--- a/kernel/compat.c
+++ b/kernel/compat.c
@@ -214,7 +214,7 @@ asmlinkage long compat_sys_sigprocmask(int how, compat_old_sigset_t *set,
#ifdef CONFIG_FUTEX
asmlinkage long compat_sys_futex(u32 *uaddr, int op, int val,
- struct compat_timespec *utime)
+ struct compat_timespec *utime, u32 *uaddr2)
{
struct timespec t;
unsigned long timeout = MAX_SCHEDULE_TIMEOUT;
@@ -226,9 +226,10 @@ asmlinkage long compat_sys_futex(u32 *uaddr, int op, int val,
timeout = timespec_to_jiffies(&t) + 1;
}
if (op == FUTEX_REQUEUE)
- val2 = (int) utime;
+ val2 = (int) (long) utime;
- return do_futex((unsigned long)uaddr, op, val, timeout, uaddr2, val2);
+ return do_futex((unsigned long)uaddr, op, val, timeout,
+ (unsigned long)uaddr2, val2);
}
#endif