From: Brad Smith Date: Fri, 5 Apr 2013 00:37:53 +0000 (-0400) Subject: Allow clock_gettime() monotonic clock to be utilized on more OS's X-Git-Tag: v1.4.1~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d89f9ba43b5999ee7873523ea2708aff92ebf858;p=thirdparty%2Fqemu.git Allow clock_gettime() monotonic clock to be utilized on more OS's Allow the clock_gettime() code using monotonic clock to be utilized on more POSIX compliannt OS's. This started as a fix for OpenBSD which was listed in one function as part of the previous hard coded list of OS's for the functions to support but not in the other. Signed-off-by: Brad Smith Reviewed-by: Paolo Bonzini Message-id: 20130405003748.GH884@rox.home.comstyle.com Signed-off-by: Anthony Liguori (cherry picked from commit d05ef160453e98546a4197496dc8a3cb2defac53) Signed-off-by: Michael Roth --- diff --git a/include/qemu/timer.h b/include/qemu/timer.h index 1766b2d6c76..c363190fcae 100644 --- a/include/qemu/timer.h +++ b/include/qemu/timer.h @@ -117,8 +117,7 @@ extern int use_rt_clock; static inline int64_t get_clock(void) { -#if defined(__linux__) || (defined(__FreeBSD__) && __FreeBSD_version >= 500000) \ - || defined(__DragonFly__) || defined(__FreeBSD_kernel__) +#ifdef CLOCK_MONOTONIC if (use_rt_clock) { struct timespec ts; clock_gettime(CLOCK_MONOTONIC, &ts); diff --git a/util/qemu-timer-common.c b/util/qemu-timer-common.c index 16f5e758b21..95e0847c76f 100644 --- a/util/qemu-timer-common.c +++ b/util/qemu-timer-common.c @@ -49,9 +49,7 @@ int use_rt_clock; static void __attribute__((constructor)) init_get_clock(void) { use_rt_clock = 0; -#if defined(__linux__) || (defined(__FreeBSD__) && __FreeBSD_version >= 500000) \ - || defined(__DragonFly__) || defined(__FreeBSD_kernel__) \ - || defined(__OpenBSD__) +#ifdef CLOCK_MONOTONIC { struct timespec ts; if (clock_gettime(CLOCK_MONOTONIC, &ts) == 0) {