lib/init: evl_read_clock() should fallback to clock_gettime() if uninit

Calling evl_read_clock() before the library is initialized should not
fault. Set arch_clock_gettime() to a valid fallback routine which
eventually hands over the request to clock_gettime().

Signed-off-by: Philippe Gerum <rpm@xenomai.org>
This commit is contained in:
Philippe Gerum 2020-02-21 13:47:35 +01:00
parent fa90a19e76
commit 991da83e74
3 changed files with 18 additions and 3 deletions

View File

@ -7,7 +7,12 @@
#include "parse_vdso.h"
#include "internal.h"
int (*arch_clock_gettime)(clockid_t clk_id, struct timespec *tp);
static int gettime_fallback(clockid_t clk_id, struct timespec *tp)
{
return clock_gettime(clk_id, tp);
}
int (*arch_clock_gettime)(clockid_t clk_id, struct timespec *tp) = gettime_fallback;
int arch_evl_init(void)
{

View File

@ -7,7 +7,12 @@
#include "parse_vdso.h"
#include "internal.h"
int (*arch_clock_gettime)(clockid_t clk_id, struct timespec *tp);
static int gettime_fallback(clockid_t clk_id, struct timespec *tp)
{
return clock_gettime(clk_id, tp);
}
int (*arch_clock_gettime)(clockid_t clk_id, struct timespec *tp) = gettime_fallback;
int arch_evl_init(void)
{

View File

@ -7,7 +7,12 @@
#include "parse_vdso.h"
#include "internal.h"
int (*arch_clock_gettime)(clockid_t clk_id, struct timespec *tp);
static int gettime_fallback(clockid_t clk_id, struct timespec *tp)
{
return clock_gettime(clk_id, tp);
}
int (*arch_clock_gettime)(clockid_t clk_id, struct timespec *tp) = gettime_fallback;
int arch_evl_init(void)
{