Rewrite bytes/sec calculation using fixed point math.
authorflorian <florian@openbsd.org>
Fri, 12 Jul 2024 19:11:25 +0000 (19:11 +0000)
committerflorian <florian@openbsd.org>
Fri, 12 Jul 2024 19:11:25 +0000 (19:11 +0000)
commitba080721f3fe881c525a96bf32265471b142c251
tree734bc77d4b877f3c040b0aec2424aa772e0e9a3d
parent75e21034e2ed7cc3514816a96606fcbfe50e069f
Rewrite bytes/sec calculation using fixed point math.

This makes signal handler safe on OpenBSD.

To avoid overflows the accuracy is scaled. Above 10 minutes run time
we only care about second accuracy. Between 1 seconds and 10 minutes
we use millisecond accuracy.

Below one second we use nanoseconds, but those numbers are probably
meaningless.

Signal handler problem pointed out by deraadt

OK deraadt, millert, tb
bin/dd/misc.c