OK read that again !  The first >= should be a plain >, otherwise the case of {0, 0L} satisfies the clock_now.tv_sec >= 0 test without any check on tv_nsec, making the second test redundant.