we buzzloop calling gettimeofday() until we see a big jump.
old code would take the difference between the immediately previous return value.
Now, compute the difference based on the clock value as of right
after the previous big jump.
An alpha pc164 at 500MHz can do about 700 calls to gettimeofday() in
one clock tick, each of which increments tv_usec by 1 -- so the "big
jump" at the end is only ~270us rather than the real clock tick of
976us, which yields a precision value which is overoptimistic by a
factor of ~4. The corrected code now yields the exact tick value
(which is correct since NetBSD/alpha doesn't have a precise
microtime).
more than one per timer tick. this will hopefully cause faster
convergence since the responses are less likely to pile up on top of
each other. (they'll eventually get randomized out of synch with each
other, but there's no sense in starting them off synchronized).
lost in the previous change.
This fixes PRs 7065 and 7482 by Martin Husemann <martin@rumolt.teuto.de>.
Also do the interface copying iff INT_LOOPBACK as in the BSDI version of
this code.