Age | Commit message (Collapse) | Author |
|
|
|
declares only 'struct timespec;' (!).
|
|
|
|
(TYPE_SIGNED, TYPE_MINIMUM, TYPE_MAXIMUM): Remove.
|
|
(NANOSLEEP_BUG_WORKAROUND): Remove.
(xnanosleep): Remove the workaround.
|
|
nanosleep whereby it fails without setting errno upon being resumed
after being suspended.
|
|
(timespec_subtract): Remove.
(NANOSLEEP_BUG_WORKAROUND): New constant.
(xnanosleep): Use gethrxtime rather than gettime; this simplifies
things considerably. Use it only on GNU/Linux hosts, since the
workaround shouldn't be needed elsewhere.
|
|
|
|
(CHAR_BIT): Remove.
(timespec_subtract, xnanosleep): Use bool for booleans.
|
|
|
|
Work even if X-Y overflows when subtracting. Make explicit the
assumption that tv_nsec must be in range.
(clock_get_realtime): Remove. All callers changed to invoke gettime,
for simplicity.
(xnanosleep): Check for gettime failure every time.
|
|
rather than an inferior, open-coded version that would fail on
AIX systems due to clock_gettime failing with errno == ENOSYS.
|
|
|
|
|
|
since the code should work properly even in the default rounding mode.
(<fenv.h>): Do not include.
(#pragma STDC FENV_ACCESS ON): Remove.
(xnanosleep): Don't futz with rounding state.
|
|
Check errno after nanosleep returns -1.
|
|
|