From: Sean Bright Date: Thu, 14 Jan 2010 20:30:03 +0000 (+0000) Subject: If we aren't running on a machine that support CLOCK_MONOTONIC, don't load. X-Git-Tag: 11.0.0-beta1~3600 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=cd2ba30e9eb37b022aa543b42baeee4a6bc411c9;p=thirdparty%2Fasterisk.git If we aren't running on a machine that support CLOCK_MONOTONIC, don't load. Group developed and tested by seanbright, Corydon76, Kobaz, and Amorsen. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240226 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/res/res_timing_timerfd.c b/res/res_timing_timerfd.c index b2ff89c75e..a62453e4d7 100644 --- a/res/res_timing_timerfd.c +++ b/res/res_timing_timerfd.c @@ -262,6 +262,16 @@ static unsigned int timerfd_timer_get_max_rate(int handle) static int load_module(void) { + int fd; + + /* Make sure we support the necessary clock type */ + if ((fd = timerfd_create(CLOCK_MONOTONIC, 0)) < 0) { + ast_log(LOG_ERROR, "CLOCK_MONOTONIC not supported. Not loading.\n"); + return AST_MODULE_LOAD_DECLINE; + } + + close(fd); + if (!(timerfd_timers = ao2_container_alloc(TIMERFD_TIMER_BUCKETS, timerfd_timer_hash, timerfd_timer_cmp))) { return AST_MODULE_LOAD_DECLINE; }