Print this page
arcstat

*** 100,119 **** pause_left = pause; do { pause_tv.tv_sec = pause_left / NANOSEC; pause_tv.tv_nsec = pause_left % NANOSEC; status = nanosleep(&pause_tv, (struct timespec *)NULL); ! if (status < 0) if (errno == EINTR) { now = gethrtime(); pause_left = *wakeup - now; if (pause_left < 1000) /* Near enough */ return; } else { fail(1, "nanosleep failed"); } } while (status != 0); } /* * Signal handler - so we can be aware of SIGCONT --- 100,120 ---- pause_left = pause; do { pause_tv.tv_sec = pause_left / NANOSEC; pause_tv.tv_nsec = pause_left % NANOSEC; status = nanosleep(&pause_tv, (struct timespec *)NULL); ! if (status < 0) { if (errno == EINTR) { now = gethrtime(); pause_left = *wakeup - now; if (pause_left < 1000) /* Near enough */ return; } else { fail(1, "nanosleep failed"); } + } } while (status != 0); } /* * Signal handler - so we can be aware of SIGCONT