diff --git a/modules/libcom/src/osi/os/vxWorks/osdTime.cpp b/modules/libcom/src/osi/os/vxWorks/osdTime.cpp index 132daf51f..29f7475db 100644 --- a/modules/libcom/src/osi/os/vxWorks/osdTime.cpp +++ b/modules/libcom/src/osi/os/vxWorks/osdTime.cpp @@ -120,6 +120,20 @@ void osdNTPReport(void) printf("NTP Server = %s\n", pserverAddr); } +void osdClockReport(void) +{ + const char * ntpTask; + + if (taskNameToId(sntp_sync_task) != ERROR) + ntpTask = sntp_sync_task; + else if (taskNameToId(ntp_daemon) != ERROR) + ntpTask = ntp_daemon; + else { + printf("No VxWorks OS clock sync tasks are running\n"); + return; + } + printf("VxWorks OS clock sync task '%s' is running\n", ntpTask); +} // Other Time Routines diff --git a/modules/libcom/src/osi/os/vxWorks/osdTime.h b/modules/libcom/src/osi/os/vxWorks/osdTime.h index 56e35610e..b529eb855 100644 --- a/modules/libcom/src/osi/os/vxWorks/osdTime.h +++ b/modules/libcom/src/osi/os/vxWorks/osdTime.h @@ -23,9 +23,11 @@ extern "C" { void osdNTPInit(void); int osdNTPGet(struct timespec *); void osdNTPReport(void); +void osdClockReport(void); #define osdTickRateGet sysClkRateGet #define osdTickGet tickGet +#define osdClockReport osdClockReport #ifdef __cplusplus } diff --git a/modules/libcom/src/osi/osiClockTime.c b/modules/libcom/src/osi/osiClockTime.c index 8b9dfd77b..f0d9fb457 100644 --- a/modules/libcom/src/osi/osiClockTime.c +++ b/modules/libcom/src/osi/osiClockTime.c @@ -292,7 +292,10 @@ int ClockTime_Report(int level) epicsTimeToStrftime(timebuf, sizeof(timebuf), "%Y-%m-%d %H:%M:%S.%06f", &ClockTimePvt.startTime); printf("Program started at %s\n", timebuf); - printf("OS Clock synchronization thread not running.\n"); + printf("OS Clock synchronization thread is not running.\n"); } +#ifdef osdClockReport + osdClockReport(); +#endif return 0; }