[LinuxPPS] [PATCHv3 13/16] pps: capture MONOTONIC_RAW timestamps as well

Alexander Gordeev lasaine at lvk.cs.msu.su
Thu Aug 5 14:29:34 CEST 2010


В Wed, 4 Aug 2010 16:29:07 -0700
Andrew Morton <akpm at linux-foundation.org> пишет:

> On Thu,  5 Aug 2010 01:06:50 +0400
> Alexander Gordeev <lasaine at lvk.cs.msu.su> wrote:
> 
> > --- a/kernel/time/timekeeping.c
> > +++ b/kernel/time/timekeeping.c
> > @@ -286,6 +286,40 @@ void ktime_get_ts(struct timespec *ts)
> >  EXPORT_SYMBOL_GPL(ktime_get_ts);
> >  
> >  /**
> > + * getnstime_raw_and_real - Returns both the time of day an raw
> > + * monotonic time in a timespec format
> > + * @ts_mono_raw:	pointer to the timespec to be set to raw
> > + *			monotonic time
> > + * @ts_real:		pointer to the timespec to be set to the time
> > + *			of day
> > + */
> > +void getnstime_raw_and_real(struct timespec *ts_raw, struct timespec *ts_real)
> > +{
> > +	unsigned long seq;
> > +	s64 nsecs_raw, nsecs_real;
> > +
> > +	WARN_ON(timekeeping_suspended);
> 
> I suspect that if this warning ever triggers, it'll trigger at some
> high frequency making a complete mess all over the floor.
> 
> WARN_ON_ONCE, perhaps?  Or just remove it?

Well, getnstime_raw_and_real() is actually just a merge of
getnstimeofday() and getrawmonotonic(). The warning came from
getnstimeofday(). Usually this code should be called once a second but
the frequency can be higher. IMHO other functions like getnstimeofday()
and ktime_get_ts() would be a bigger problem anyway because they have
the same checks.

So I'm ok with either choice.
Hmm, will use WARN_ON_ONCE then if nobody objects.

-- 
  Alexander
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 489 bytes
Desc: not available
Url : http://ml.enneenne.com/pipermail/linuxpps/attachments/20100805/1e58163e/attachment.pgp 


More information about the LinuxPPS mailing list