using gettimeofday in the scheduler is problematic, since it’s possible
the system time will jump ahead or back because of the user or ntp
time . This can have side effects such as sleep() and timeout() never
returning and thus threads not ever being scheduled again and seems to
also other side effects .
Eric H. is arguing  that replacing the existing mechanism that
libc-select to sleep and getimeofday to calculate the effectively
by libc-sleep is also problematic because:
“[for libc-sleep]… system activity may lengthen the sleep by an
However, this applies in exactly the same way to libc-select as well and
replacing the select/gettimeofday mechanism by libc-sleep should at
no worse. Objections?
Has there been any effort to implement a solution based on sleep/usleep?
interest to implement a more robust schedule timing mechanism? Is there
chance for a patch based on sleep/usleep to make it into CVS?