- Previously, the ptp4l application did not limit the frequency correction of the clock. As a consequence, with some PTP clocks, when ptp4l was correcting a large offset, it could set the frequency correction to -100%, which effectively stopped the clock. This update adds a new option to configure the maximum allowed correction of the clock, which, by default is 90%. As a result, the synchronized clock never stops unless ptp4l is allowed to adjust the clock by 100%.
- Previously, the phc2sys utility was not able to read information about the current Coordinated Universal Time (UTC) offset and pending leap seconds from the ptp4l application. As a consequence, the user had to specify the UTC offset manually and the leap seconds were not handled. This update adds a new option to phc2sys to wait for ptp4l to synchronize the PTP clock and to periodically read the current UTC offset and information about pending leap seconds. As a result, the phc2sys utility uses the correct UTC offset and leap seconds are handled properly.
- BZ#991332, BZ#985531
- Previously, the ptp4l application did not correctly check if a cached follow-up or a synchronized message could be associated with a newly received synchronization or a follow-up message. As a consequence, the messages could be associated incorrectly, which could result in a large offset and disturbed synchronization of the clock. The code which associates the synchronization and follow-up messages has been fixed. As a result, there are no longer disturbances in the synchronization.
- Previously, the ptp4l application did not reset the announce receipt timer for ports in the PASSIVE state when an announce message was received. As a consequence, the port in the PASSIVE state was repeatedly switching between PASSIVE and MASTER states. This bug has been fixed and the timer is now correctly reset with every announce message. As a result, the port stays in the PASSIVE state until it stops receiving announce messages.
- Previously, the ptp4l and phc2sys utilities did not check if the command line arguments and the values specified in the configuration file were valid. As a consequence, the utilities could terminate unexpectedly. The utilities now check if the values are valid and if an invalid value is specified, the utilities no longer terminate unexpectedly and print an error message instead.
- Occasionally, it is important that the system clock is not stepped, that is, not to interfere with other programs running on the system. Restarting the phc2sys application caused stepping of the clock. A new option has been added to phc2sys, and it is now possible to prevent phc2sys from stepping the clock.