Fall back on clock_gettime when timespec_get() is unavailable
authorJeremy Huddleston Sequoia <jeremyhu@apple.com>
Wed, 13 Jan 2021 00:44:34 +0000 (16:44 -0800)
committerMarge Bot <eric+marge@anholt.net>
Sat, 16 Jan 2021 00:14:46 +0000 (00:14 +0000)
Fixes: e3a8013de8ca "util/u_queue: add util_queue_fence_wait_timeout"
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/1020
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/4088

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
Signed-off-by: Yurii Kolesnykov <root@yurikoles.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8482>

src/util/u_queue.c

index 6161260..cae4cc3 100644 (file)
@@ -183,7 +183,11 @@ _util_queue_fence_wait_timeout(struct util_queue_fence *fence,
    if (rel > 0) {
       struct timespec ts;
 
+#ifdef HAVE_TIMESPEC_GET
       timespec_get(&ts, TIME_UTC);
+#else
+      clock_gettime(CLOCK_REALTIME, &ts);
+#endif
 
       ts.tv_sec += abs_timeout / (1000*1000*1000);
       ts.tv_nsec += abs_timeout % (1000*1000*1000);