Re: [chrony-dev] chronyd not recovering after time stepped. |
[ Thread Index |
Date Index
| More chrony.tuxfamily.org/chrony-dev Archives
]
- To: chrony-dev@xxxxxxxxxxxxxxxxxxxx
- Subject: Re: [chrony-dev] chronyd not recovering after time stepped.
- From: Bryan Christianson <bryan@xxxxxxxxxxxxx>
- Date: Fri, 28 Aug 2015 16:49:07 +1200
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=smtpcorp.com; s=a0-2; h=Feedback-ID:X-Smtpcorp-Track:To:Message-Id:Date: From:Subject; bh=Z8z194+OUAqYFEIRL5j9mttgZbGA2LrZVNtoAItf+jc=; b=FVCWRPGOYRZu 4pNwDSHwwCi81lpcEkwPLInH4u/szJyginDzvbS5CkoK42X9mIYtVzqmvaMQ/Ehe1KcyannHRwWT5 tkeGhN6LtFHEdgGBXdkcZ3vXG2KG2cvR8RvM81BqddDzBQgVd+zIV+aUQFjHKSl6baXdcBO3ALxC0 GxzoOKsK7Q/ANr63vIrJEg0tQJ4CDWp7BZXJFpOUXzkiJdGHcFDgkjCYiNHc1p3gzs5MGe5+5b6B6 7QFoRUMXb3/NrCiwha8CE/Uw0ZtnvBncT0t+Vq8H/5CthEM0HSFFB9uqj81nxuvyPMTbSuegMOjoQ 0PZ5XCRxPKmi630A/cAbWQ==;
- Feedback-id: 149811m:149811acx33YQ:149811sUapGmMZHF:SMTPCORP
> On 28/08/2015, at 9:13 am, Bryan Christianson <bryan@xxxxxxxxxxxxx> wrote:
>
>
>> On 27/08/2015, at 11:43 pm, Miroslav Lichvar <mlichvar@xxxxxxxxxx> wrote:
>>
>> On Thu, Aug 27, 2015 at 11:35:02PM +1200, Bryan Christianson wrote:
>>>> On 27/08/2015, at 11:24 pm, Miroslav Lichvar <mlichvar@xxxxxxxxxx> wrote:
>>>> That is odd. How long is the polling interval? It shouldn't take more
>>>> than 6-10 new measurements after the step for the frequency to get close
>>>> again to the right value and correct any remaining offset.
>>>
>>> The polling interval is 8 seconds. And indeed, when I restart chronyd it only takes a few cycles to correct the offset.
>>> I'm not seeing any significant change in frequency, maybe 1ppm (from 17.5 ppm) for just a few samples after the step and then back to 17.5.
>>
>> Ok, that probably means it's something in the driver or the kernel.
>> It might help us to see what values at what time is adjtime() getting
>> and what it returns.
>
> I think I figured it out. When the time is stepped there is a big spike in offset_sd. This causes the drift removal interval to be increased to a very large value (aprox 2 hours in the trace I just looked at) and then applied when the current drift cycle completes.
>
> So for the next 2 hours, clock adjustments in start_adjust() are having a predicted offset of 30 ms or so. When the very long drift removal interval expires, then things go back to normal - offset_sd is now small and the system rapidly recovers.
>
> I think the drift removal cycle should be restarted if the newly calculated interval is significantly different from the value of current_drift_removal_interval
>
Alternatively, and much simpler, we set an upper bound on drift_removal_interval of say 200sec
--
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.