I was wondering why the following change was made from -rt14
onwards.
@@ -1634,7 +1531,7 @@ asmlinkage long sys_futex(u32 __user *ua
int val3)
{
struct timespec t;
- unsigned long timeout = MAX_SCHEDULE_TIMEOUT;
+ unsigned long timeout = 0;
This was introduced in patch-2.6.14-rt13-rf3 by David.
This seems to return spurious -ETIMEDOUT errors even in the
non-robust code and results in userspace (glibc) retrying
several mutex operations before it succeeds. I was chasing
down a degradation of performance of some testcases and was
able to fix those by reverting this change back.
-Dinakar