kstat(1): implement wait with setitimer(2) instead of nanosleep(2)
kstat(1)'s wait period drifts because nanosleep(2) uses a relative
timeout. If we use setitimer(2)/sigsuspend(2) the period does not
drift.
While here, bump the upper bound for wait up to UINT_MAX and switch to
the normal strtonum(3) error message format.
With input from kn@.
Tweaked by bluhm@ to block SIGALRM with sigprocmask(2) while we're
outside of sigsuspend(2).
Thread: https://marc.info/?l=openbsd-tech&m=
160038548111187&w=2
Earlier version ok millert@.
ok bluhm@