aboutsummaryrefslogtreecommitdiff
path: root/lib/libkvm
diff options
context:
space:
mode:
authorfirk <firk@cantconnect.ru>2022-03-21 13:33:11 +0000
committerGeorge V. Neville-Neil <gnn@FreeBSD.org>2022-03-21 13:33:46 +0000
commitbb53dd56c30c6360fc82be762ed98b0af6b9f69f (patch)
tree2564c0dee2f7a6de6634e2b074879b9129c298fe /lib/libkvm
parentcab496e16cb384de03010d9dea7399cbbfb3c3f9 (diff)
Diffstat (limited to 'lib/libkvm')
-rw-r--r--lib/libkvm/kvm_proc.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/lib/libkvm/kvm_proc.c b/lib/libkvm/kvm_proc.c
index 5058e86a645b..1af4ce38615f 100644
--- a/lib/libkvm/kvm_proc.c
+++ b/lib/libkvm/kvm_proc.c
@@ -94,15 +94,10 @@ static uint64_t cpu_tick_frequency;
static uint64_t
cputick2usec(uint64_t tick)
{
-
if (cpu_tick_frequency == 0)
return (0);
- if (tick > 18446744073709551) /* floor(2^64 / 1000) */
- return (tick / (cpu_tick_frequency / 1000000));
- else if (tick > 18446744073709) /* floor(2^64 / 1000000) */
- return ((tick * 1000) / (cpu_tick_frequency / 1000));
- else
- return ((tick * 1000000) / cpu_tick_frequency);
+ return ((tick / cpu_tick_frequency) * 1000000ULL) +
+ ((tick % cpu_tick_frequency) * 1000000ULL) / cpu_tick_frequency;
}
/*