Re: [GIT pull] ntp updates for 2.6.31

From: Miroslav Lichvar
Date: Tue Jun 16 2009 - 08:53:23 EST


On Tue, Jun 16, 2009 at 11:06:47AM +0200, Ingo Molnar wrote:
>
> * john stultz <johnstul@xxxxxxxxxx> wrote:
>
> > Linus,
> > You probably didn't see this before merging. Could you yank the
> > above two patches? Miroslav (RH package maintainer for ntpd), has
> > voiced concerns that the SHIFT_PLL patch breaks the NTP design and is
> > worried it may negatively effect NTP networks of systems running with
> > different SHIFT_PLL values.
> >
> > While the patch does greatly improve NTP convergence times, and so
> > far no negative results have been seen in tests, its out of an
> > abundance of caution and a desire to keep the adjtimex behavior
> > stable that I requested Thomas and Ingo to hold off on merging
> > this patch, while I work with Miroslav to see if we cannot get the
> > same benefit by adjusting the userspace NTPd.

[..]

> Each OS should converge back to the correct time _as fast as
> physically possible_. If this is a problem and if someone wants
> crappy time and longer periods of convergence for some odd reason
> then that header file change can be edited by hand even. It's not
> like it's that hard to change, if there's genuine interest.
>
> So i'm against any revert on this basis. If another basis comes up
> we can reconsider of course. What do you think?

I think the most important one is following the NTP specification.

If Linux really needs to have the fastest PLL, could it be done by
modifying the time constant passed in adjtimex structure instead of
changing SHIFT_PLL? The PLL response will be exactly the same, but it
will allow the applications (and admins) to detect that it is
different than expected.

Something like:

--- a/kernel/time/ntp.c
+++ b/kernel/time/ntp.c
@@ -425,6 +425,8 @@
time_constant = txc->constant;
if (!(time_status & STA_NANO))
time_constant += 4;
+ /* We want faster PLL */
+ time_constant -= 2;
time_constant = min(time_constant, (long)MAXTC);
time_constant = max(time_constant, 0l);
}

Thanks,

--
Miroslav Lichvar
--
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/