Correct the number of retries in a futex_wake() call.

Sponsored by:	Google SoC 2006
Submitted by:	rdivacky
This commit is contained in:
netchild 2006-08-26 10:36:16 +00:00
parent 61b3c1383b
commit e7f60f069c

View File

@ -306,8 +306,12 @@ linux_sys_futex(struct thread *td, struct linux_sys_futex_args *args)
printf("second wakeup\n");
#endif
op_ret = 0;
/* Linux always puts there 0 retries */
op_ret += futex_wake(f2, 0, NULL);
/*
* Linux uses the address of the timespec parameter
* as the number of retries, so any large number will
* be ok.
*/
op_ret += futex_wake(f2, 0x7fffffff, NULL);
ret += op_ret;
}
futex_put(f2);