[LinuxPPS] Re: Something Funny going on with linuxPPS.

Rodolfo Giometti giometti at enneenne.com
Thu Oct 18 10:44:33 CEST 2007


On Thu, Oct 18, 2007 at 02:27:01AM -0600, clemens at dwf.com wrote:
> > On Wed, Oct 17, 2007 at 02:56:13PM -0600, clemens at dwf.com wrote:
> > > OK, First the version.
> > > I appear to be running the ntp-pps-2.6.23-rc2.diff with linux-2.6.22 and
> > > the patch-2.6.23-rc6 .
> > > 
> > > So Im running the LinuxPPS rc2 patch with rc6.
> > > 
> > > With a test program that just prints out the time hacks (if they have changed)
> > 
> > As test program you mean "ppstest"?
> > 
> > > I see:
> > > 
> > > reg> [root at deneb Testing]# pps*4
> > > fd2 = 3
> > > getcap says 0x1133
> > > getparam is 0x1113
> > > set mode to 0x1113
> > > getparam is 0x1113
> > > Enter loop
> > > 
> > > A: 1192653829.3294954939 #437782
> > >                            C: 1192653828.198436560 #437781
> > > A: 1192653830.3294955022 #437783
> > >                            C: 1192653829.198489907 #437782
> > > A: 1192653831.3294955257 #437784
> > >                            C: 1192653830.198540585 #437783
> > > A: 1192653832.3294954727 #437785
> > >                            C: 1192653831.198591520 #437784
> > > A: 1192653833.3294955284 #437786
> > >                            C: 1192653832.198644426 #437785
> > > A: 1192653834.3294954791 #437787
> > >                            C: 1192653833.198695348 #437786
> > > A: 1192653835.3294955233 #437788
> > >                            C: 1192653834.198746540 #437787
> > > 
> > > Note that the Assert for second 829.3 is followed by the Clear for second 
> > > 828.19
> > > This cant happen.
> > > These time hacks MUST be in ascending order !!!
> > > 
> > > Somehow the Clear timehacks seem to be 2sec behind where they should be
> > > relative to the Assert timehacks.
> > > 
> > > I apologize for not having had time to actually LOOK at the code, but 
> > > Im officially retired now and should have more time for things like this.
> > > Just once I get the stacks piled up on my desk cleared off...
> > 
> > I don't understand what you mean. In your log I see that both assert
> > and clear events _are_ in ascending order. Of course you must consider
> > them separately... :)
> > 
> But they must be interleaved !
> The printout of assert and clear times must be monotonic,- the timestamps
> must be increasing in time.
> There is no way that a Clear event for 28.1 seconds can occur between the Assert
> events at 29.3 seconds and 30.3 seconds.
> The timestamp that SHOULD be there is for 30.1s  
> Somehow, the 'second' part of it is 2seconds off 
>    (or of course it could be the other way around) 
> 
> The very first time thru the loop one could have both assert and clear timestamps
> waiting to print, and I guess they could be in the 'wrong' order, but after that, we 
> get exactly one of Assert or Clear on a pass thru the loop and they MUST be 
> time ordered.

I don't know where do you get these printing. Do they came from
ppstest.c? I don't think so.

However I see exactly _one_ assert and one clear event each second no
matter which order your program prints them out. In fact if you print
the clear _before_ the assert event everything works well. :)

Did you look into kernel messages? Only these messages must be
monotonic regarding the timestamp.

Ciao,

Rodolfo

-- 

GNU/Linux Solutions                  e-mail:    giometti at enneenne.com
Linux Device Driver                             giometti at gnudd.com
Embedded Systems                     		giometti at linux.it
UNIX programming                     phone:     +39 349 2432127



More information about the LinuxPPS mailing list