Re: [PATCH v2 2/6] KVM-HV: KVM Steal time implementation

Peter Zijlstra
2011-01-31T11:07:11Z

On Fri, 2011-01-28 at 14:52 -0500, Glauber Costa wrote:
> + u64 to = (get_kernel_ns() - vcpu->arch.this_time_out);
> + /*
> + * using nanoseconds introduces noise, which accumulates easily
> + * leading to big steal time values. We want, however, to keep the
> + * interface nanosecond-based for future-proofness.
> + */
> + to /= NSEC_PER_USEC;
> + to *= NSEC_PER_USEC;

This just doesn't make any sense at all, you use the most expensive and
accurate kernel interface to get ns resolution timestamps (ktime_get),
and then you truncate the stuff to usec for some totally weird and
unexplained reason.

If ktime_get is wrong all our time-keeping is out the window.