Re: [PATCH 2/2] Introduce CLOCK_MONOTONIC_RAW

From: Andrew Morton
Date: Wed Mar 19 2008 - 15:58:37 EST


On Tue, 18 Mar 2008 15:13:40 -0700 john stultz <johnstul@xxxxxxxxxx> wrote:

> Here's my CLOCK_MONOTONIC_RAW, including some suggested changes from
> Roman.
>
> Andrew, if there are not major objections, could you add it to your
> 2.6.26 pending list?
>
> thanks
> -john
>
>
> In talking with Josip Loncaric, and his work on clock synchronization
> (see btime.sf.net), he mentioned that for really close synchronization,
> it is useful to have access to "hardware time", that is a notion of time
> that is not in any way adjusted by the clock slewing done to keep close
> time sync.
>
> Part of the issue is if we are using the kernel's ntp adjusted
> representation of time in order to measure how we should correct time,
> we can run into what Paul McKenney aptly described as "Painting a road
> using the lines we're painting as the guide".
>
> I had been thinking of a similar problem, and was trying to come up with
> a way to give users access to a purely hardware based time
> representation that avoided users having to know the underlying
> frequency and mask values needed to deal with the wide variety of
> possible underlying hardware counters.
>
> My solution is to introduce CLOCK_MONOTONIC_RAW. This exposes a
> nanosecond based time value, that increments starting at bootup and has
> no frequency adjustments made to it what so ever.
>
> The time is accessed from userspace via the posix_clock_gettime()
> syscall, passing CLOCK_MONOTONIC_RAW as the clock_id.
>
> This patch depends on the mult_orig patch, just sent a moment ago.

alpha:

kernel/built-in.o: In function `posix_get_monotonic_raw':
: undefined reference to `getrawmonotonic'
kernel/built-in.o: In function `posix_get_monotonic_raw':
: undefined reference to `getrawmonotonic'

presumably busted for all CONFIG_GENERIC_TIME=n architectures.

Couldn't see a quick fix so I dropped it.
--
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/