StarlingX PTP Notification App
Go to file
Cole Walker 63fefca36c [PTP] Reduce cpu usage and correct holdover time
Fixes two issues:

1.
The CPU usage consumed by monitoring the kern.log file for changes in
the NIC cgu status was found to be excessive. This change reverts that
implementation and returns to a polling approach similar to what was
already used for monitoring ptp4l and os clock statuses. This has been
observed to bring main process in the notificationservice-base image
down from ~60% CPU to ~8-10% CPU utilization.

In the future, a preferrable implementation would be to work with device
driver owners to provide support for udev events, removing the need to
poll the status of devices.

2.
User supplied holdover times for each service type were not being
applied correctly. Updated daemon.py to set the holdover times in the
service context.

This also includes providing a user configurable "CONTROL_TIMEOUT"
parameter to control the frequency of polling. This is a global value
and affects the polling rate for all services.

Test-plan:
PASS: Build and install ptp-notification app and containers
PASS: Observe reduced CPU usage and confirm that GNSS monitoring still
works
PASS: User supplied holdover times work correctly, along with polling
rate

Story: 2010056
Task: 46512
Task: 46513

Signed-off-by: Cole Walker <cole.walker@windriver.com>
Change-Id: Ic0050cc09f5118e7f1c32aa13168084d6456437e
2022-10-06 19:27:04 +00:00
api-ref/source Update REST API doc for PTP notification v2 2022-09-13 11:09:36 -04:00
doc Fix tox-docs failing sphinx 2022-05-31 14:33:17 +00:00
locationservice-base Fix build failure for ptp-notification images 2022-09-06 16:32:12 -04:00
notificationclient-base [PTP] Fix duplicate notifications and correct GNSS state tracking 2022-09-28 18:48:13 +00:00
notificationservice-base [PTP] Reduce cpu usage and correct holdover time 2022-10-06 19:27:04 +00:00
python-k8sapp-ptp-notification Remove --use-deprecated legacy-resolver flag 2022-07-07 20:38:40 +00:00
stx-ptp-notification-helm [PTP] Reduce cpu usage and correct holdover time 2022-10-06 19:27:04 +00:00
.gitignore api-ref html builds 2021-03-11 13:11:54 -05:00
.gitreview Added .gitreview 2021-01-19 18:53:24 +00:00
.zuul.yaml Add CguHandler, DmesgWatcher, GnssMonitor classes 2022-06-23 17:08:37 -04:00
CONTRIBUTING.rst Added armada manifest and required build files 2021-02-03 17:41:00 -05:00
HACKING.rst Added armada manifest and required build files 2021-02-03 17:41:00 -05:00
centos_build_layer.cfg Added armada manifest and required build files 2021-02-03 17:41:00 -05:00
centos_iso_image.inc Remove ptp-notification armada application build 2022-08-24 11:43:45 -03:00
centos_pkg_dirs Added armada manifest and required build files 2021-02-03 17:41:00 -05:00
centos_pkg_dirs_containers Added armada manifest and required build files 2021-02-03 17:41:00 -05:00
centos_stable_docker_images.inc Add Notification Services and Notification Client Sidecar 2021-02-01 11:10:51 +08:00
debian_build_layer.cfg Add debian_build_layer.cfg file 2021-10-05 14:12:32 -04:00
debian_pkg_dirs Add Debian packaging for ptp-notification app 2021-12-02 12:06:28 -06:00
debian_stable_docker_images.inc Images of ptp-notification containers for Debian 2022-07-19 15:01:27 -03:00
requirements.txt [PTP] Reduce cpu usage and correct holdover time 2022-10-06 19:27:04 +00:00
test-requirements.txt Add CguHandler, DmesgWatcher, GnssMonitor classes 2022-06-23 17:08:37 -04:00
tox.ini Images of ptp-notification containers for Debian 2022-07-19 15:01:27 -03:00