RE: [chrony-dev] makestep command sometimes makes chrony stop reading its sources

[ Thread Index | Date Index | More chrony.tuxfamily.org/chrony-dev Archives ]


>>Probably the easiest fix is to move the makestep code from system
>drivers
>>where it goes unnoticed to local module and do two adjustments, one to
>>cancel the remaining slew and second to do the actual step. This also
>makes
>>the makestep command available on all systems.
>>
>>Please try the attached patch.
>>
>
>I'll try the patch and let you know of the results today.
>

I've applied the patch but when i executed makestep when the system
clock was one year in the past it made the offset twice as large (2
years in the past) and eventually chronyd freezed (100% cpu load)
after makestep was issued multiple times in a row.

I think the signs in the LCL_AccumulateOffset and LCL_ApplyStepOffset
calls in LCL_MakeStep are wrong so I changed it to:

LCL_AccumulateOffset(correction);
LCL_ApplyStepOffset(-correction);

and so far it seems to work better. The sources are still being
Polled after the step from an offset in the future.

The correction value retrieved with LCL_GetOffsetCorrection is
positive when the system time is in the past compared with true
time. Normally the offset value is usually considered to be in the
future when it is positive. For example, see line 698-707 in acquire.c

--
Tjalling Hattink

---
To unsubscribe email chrony-dev-request@xxxxxxxxxxxxxxxxxxxx with "unsubscribe" in the subject.
For help email chrony-dev-request@xxxxxxxxxxxxxxxxxxxx with "help" in the subject.
Trouble?  Email listmaster@xxxxxxxxxxxxxxxxxxxx.


Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/