Re: [chrony-dev] PPSAPI: kernel consumer |
[ Thread Index | Date Index | More chrony.tuxfamily.org/chrony-dev Archives ]
On Mon, 8 Feb 2010 10:14:52 +0100 Miroslav Lichvar <mlichvar@xxxxxxxxxx> wrote: > On Sat, Feb 06, 2010 at 04:32:13AM +0300, Alexander Gordeev wrote: > > Do you plan to add a way to bind kernel consumer in chrony's new PPS > > driver? This is an optional feature of PPSAPI as you surely know. > > I'm not sure chrony will be able to use it. If I understand it > correctly, it would need to give up control over frequency and phase > adjustments which is necessary for keeping source stats accurate. Right, you have to give up the control. But I don't understand why it's a problem... You can monitor frequency changes using adjtimex and phase changes using PPS signal itself. After all in this mode the user-space time daemon is used primarily to unbind PPS kernel consumer when the local time has changed in a leap and is more than a second from the standard. Then it adjusts the time and binds the kernel consumer back. I like chrony very much because it can do its job really good. But the kernel implementation is so very simple and straightforward and works good as well. And this is a part of PPSAPI. I mean that it would be great to have choice. > > I've tested chrony's PPS driver and I'm really shocked with its > > synchronization quality. It is a HUGE improvement over ntpd. It was > > hard to believe that it can sync clock with a precision of 1-2us but > > it is true. However, my new kernel consumer seems to be able to > > keep the same precision, but it can sync faster (in few seconds). > > I think chrony could do that too if the kernel interface allowed a > tight loop. > > This could be an extension to adjtimex which would allow us to know > either remaining singleshot adjustment (ideally in nanoseconds) or > when exactly did the last change in frequency happen. I doubt that adjtimex will ever be extended. In the kernel I use MONOTONIC_RAW clock to calculate frequency adjustments and REALTIME clock for the phase. Seems to me this is the most straightforward way. But AFAIK MONOTONIC_RAW is Linux-specific. -- Alexander
Attachment:
signature.asc
Description: PGP signature
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |