[Xymon] Xymon on RHEL3 - not working?
John Horne
john.horne at plymouth.ac.uk
Tue Jul 10 17:38:38 CEST 2012
On Tue, 2012-07-10 at 15:12 +0100, John Horne wrote:
> Printing out what 'now' is gives 0 all the time. 'gettimer' comes from
> lib/timefunc.c line 49:
>
> ======================================
> time_t gettimer(void)
> {
> int res;
> struct timespec t;
>
> #if (_POSIX_TIMERS > 0) && defined(_POSIX_MONOTONIC_CLOCK)
> res = clock_gettime(CLOCK_MONOTONIC, &t);
> return (time_t) t.tv_sec;
> #else
> return time(NULL);
> #endif
> }
> ======================================
>
>
> However printing out 'res' shows that 'clock_gettime' is always
> returning an error (-1).
>
Sorry, should have added that errno is showing as 22 (EINVAL). The man
page for clock_gettime states:
EINVAL The clk_id specified is not supported on this system.
However, it seems that although _POSIX_MONOTONIC_CLOCK may seem to be
available, at runtime it is not.
This link (for the 'curl' program) has more discussion about it:
http://curl.haxx.se/mail/tracker-2008-07/0003.html
Checking the RHEL3 system using a small program calling 'sysconf' shows
that _POSIX_MONOTONIC_CLOCK is available if checked, but is not
available at runtime (using sysconf):
===========
monotonic clock: _POSIX_TIMERS: 200112 _POSIX_MONOTONIC_CLOCK: 0
Err found: -1
Err found: -1, errno = 22, string = Invalid argument
Sysconf value for _POSIX_MONOTONIC_CLOCK: -1
===========
So the clock seems to be available, but checking at runtime with sysconf
says that it is not.
Whereas on an RHEL6 system it shows:
===========
monotonic clock: _POSIX_TIMERS: 200809 _POSIX_MONOTONIC_CLOCK: 0
Sysconf value for _POSIX_MONOTONIC_CLOCK: 200809
===========
Again it seems that the clock is available, and the runtime/sysconf
check confirms that.
John.
--
John Horne Tel: +44 (0)1752 587287
Plymouth University, UK Fax: +44 (0)1752 587001
More information about the Xymon
mailing list