Make futex timeout absolute, and properly return ETIMEDOUT
This change is backwards-incompatible, but AFAIK only relibc uses the futex syscall, and relibc isn't currently handling pthread timeouts at all.
This change is backwards-incompatible, but AFAIK only relibc uses the futex syscall, and relibc isn't currently handling pthread timeouts at all.