X-Git-Url: https://git.libre-soc.org/?p=mesa.git;a=blobdiff_plain;f=src%2Futil%2Fos_time.c;h=92fc3638ddb8bec2994d99b2693f76c401d491a3;hp=22195c5a6699067356f75f119a57c3dac80f5dee;hb=HEAD;hpb=8c52bca11228a7d514cfbcb1c6605c2140949b06 diff --git a/src/util/os_time.c b/src/util/os_time.c index 22195c5a669..92fc3638ddb 100644 --- a/src/util/os_time.c +++ b/src/util/os_time.c @@ -33,13 +33,11 @@ */ #include "os_time.h" - -/* TODO: fix this dependency */ -#include "gallium/include/pipe/p_config.h" +#include "detect_os.h" #include "util/u_atomic.h" -#if defined(PIPE_OS_UNIX) +#if DETECT_OS_UNIX # include /* usleep */ # include /* timeval */ # include /* timeval */ @@ -55,13 +53,13 @@ int64_t os_time_get_nano(void) { -#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) +#if DETECT_OS_LINUX || DETECT_OS_BSD struct timespec tv; clock_gettime(CLOCK_MONOTONIC, &tv); return tv.tv_nsec + tv.tv_sec*INT64_C(1000000000); -#elif defined(PIPE_OS_UNIX) +#elif DETECT_OS_UNIX struct timeval tv; gettimeofday(&tv, NULL); @@ -95,13 +93,13 @@ os_time_get_nano(void) void os_time_sleep(int64_t usecs) { -#if defined(PIPE_OS_LINUX) +#if DETECT_OS_LINUX struct timespec time; time.tv_sec = usecs / 1000000; time.tv_nsec = (usecs % 1000000) * 1000; while (clock_nanosleep(CLOCK_MONOTONIC, 0, &time, &time) == EINTR); -#elif defined(PIPE_OS_UNIX) +#elif DETECT_OS_UNIX usleep(usecs); #elif DETECT_OS_WINDOWS @@ -148,7 +146,7 @@ os_wait_until_zero(volatile int *var, uint64_t timeout) if (timeout == OS_TIMEOUT_INFINITE) { while (p_atomic_read(var)) { -#if defined(PIPE_OS_UNIX) +#if DETECT_OS_UNIX sched_yield(); #endif } @@ -162,7 +160,7 @@ os_wait_until_zero(volatile int *var, uint64_t timeout) if (os_time_timeout(start_time, end_time, os_time_get_nano())) return false; -#if defined(PIPE_OS_UNIX) +#if DETECT_OS_UNIX sched_yield(); #endif } @@ -184,7 +182,7 @@ os_wait_until_zero_abs_timeout(volatile int *var, int64_t timeout) if (os_time_get_nano() >= timeout) return false; -#if defined(PIPE_OS_UNIX) +#if DETECT_OS_UNIX sched_yield(); #endif }