Maybe I'm misunderstanding something, but enterprise
In this case we should provide a facility for this.
Providing a global
monotonic counter may be easier than providing a monotonic
clock. Hence
my question.
apps can do this entirely on their own without any
kernel help, correct?
I doubt it. A discontinuity has occured, but what do we knowActually, I think for many/most profiling applications,
about it? nothing.
just knowing a discontinuity occurred between two
timestamps is very useful as that one specific measurement
can be discarded. If a discontinuity is invisible,
one clearly knows that a negative interval is bad,
but if an interval is very small or very large,
one never knows if it is due to a discontinuity or
due to some other reason.
This would argue for a syscall/vsyscall that can
"return" two values: the "time" and a second
"continuity generation" counter.
Oh, I see. I missed that very crucial point.True, though clock_gettime(CLOCK_MONOTONIC) can provideWe have that already. The question is how to implement it in
the monotonicity where it is required.
a vsyscall.
So, just to verify/clarify... There is NO WAY for
a vsyscall to ensure monotonicity (presumably because
the previous reading can't be safely stored?). So
speed and "correctness" are mutually exclusive?
If true, yes, that's a potentially significant problem\
though an intelligent app can layer monotonicity
on top of the call I suppose.