Re: [Lse-tech] [RFC][Patch 1/5] nanosecond timestamps and diffs

From: Nish Aravamudan
Date: Mon Dec 12 2005 - 22:47:45 EST


On 12/12/05, George Anzinger <george@xxxxxxxxxx> wrote:
> john stultz wrote:
> > On Mon, 2005-12-12 at 20:00 +0000, Shailabh Nagar wrote:
> >
> >>john stultz wrote:
> >>
> >>>On Mon, 2005-12-12 at 19:31 +0000, Shailabh Nagar wrote:
> >>>
> >>>
> >>>>Christoph Lameter wrote:
> >>>>
> >>>>
> >>>>>On Wed, 7 Dec 2005, Shailabh Nagar wrote:
> >>>>>
> >>>>>>+void getnstimestamp(struct timespec *ts)
> >>>>>
> >>>>>There is already getnstimeofday in the kernel.
> >>>>
> >>>>Yes, and that function is being used within the getnstimestamp() being proposed.
> >>>>However, John Stultz had advised that getnstimeofday could get affected by calls to
> >>>>settimeofday and had recommended adjusting the getnstimeofday value with wall_to_monotonic.
> >>>>
> >>>>John, could you elaborate ?
> >>>
> >>>I think you pretty well have it covered.
> >>>
> >>>getnstimeofday + wall_to_monotonic should be higher-res and more
> >>>reliable (then TSC based sched_clock(), for example) for getting a
> >>>timestamp.
> >>>
> >>>There may be performance concerns as you have to access the clock
> >>>hardware in getnstimeofday(), but there really is no other way for
> >>>reliable finely grained monotonically increasing timestamps.
> >>>
> >
> >
> >>Thanks, that clarifies. I guess the other underlying concern here would be whether these
> >>improvements (in resolution and reliability) should be going into getnstimeofday()
> >>itself (rather than creating a new func for the same) ? Or is it better to leave
> >>getnstimeofday as it is ?
> >
> >
> > No, getnstimeofday() is very much needed to get a nanosecond grained
> > wall-time clock, so a new function is needed for the monotonic clock.
> >
> > In my timeofday re-work I have used the name "get_monotonic_clock()" and
> > "get_monotonic_clock_ts()" for basically the same functionality
> > (providing a ktime and a timespec respectively). You might consider
> > naming it as such, but resolving these naming collisions shouldn't be
> > too difficult either way.
>
> Indeed. Lets use a name with "monotonic" in it, please. And,
> possibly not "clock". How about get_nsmonotonic_time() or some such?

I agree -- personal preference, though, I prefer units at the end,
i.e. get_monotonic_time_ns() or get_monotonic_time_nsecs().

Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/