summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2002-01-25 21:22:34 +0000
committerphk <phk@FreeBSD.org>2002-01-25 21:22:34 +0000
commit2566d06fbac80e19a4ffc9806b60b75f1d328a6f (patch)
tree2bf82efe84079ce2c5755680a459e257b62ed962
parentbe9f3249a90c2f9f59b5540b8239f2f365898ede (diff)
downloadFreeBSD-src-2566d06fbac80e19a4ffc9806b60b75f1d328a6f.zip
FreeBSD-src-2566d06fbac80e19a4ffc9806b60b75f1d328a6f.tar.gz
Be more conservative about interrupt latency, it aint getting better it seems.
-rw-r--r--sys/kern/kern_tc.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/kern_tc.c b/sys/kern/kern_tc.c
index 3697b5a..92e11c3 100644
--- a/sys/kern/kern_tc.c
+++ b/sys/kern/kern_tc.c
@@ -195,7 +195,7 @@ microuptime(struct timeval *tv)
tv->tv_sec = tc->tc_offset_sec;
tv->tv_usec = tc->tc_offset_micro;
tv->tv_usec += ((u_int64_t)tco_delta(tc) * tc->tc_scale_micro) >> 32;
- if (tv->tv_usec >= 1000000) {
+ while (tv->tv_usec >= 1000000) {
tv->tv_usec -= 1000000;
tv->tv_sec++;
}
@@ -216,7 +216,7 @@ nanouptime(struct timespec *ts)
delta += ((u_int64_t)count * tc->tc_scale_nano_f);
delta >>= 32;
delta += ((u_int64_t)count * tc->tc_scale_nano_i);
- if (delta >= 1000000000) {
+ while (delta >= 1000000000) {
delta -= 1000000000;
ts->tv_sec++;
}
OpenPOWER on IntegriCloud