Update all Windows files except dobuild.cmd to use LF line endings
[fio.git] / os / os.h
diff --git a/os/os.h b/os/os.h
index 8d2a6ae8cd0923a5b29b92bf23ba1052e7065a97..ce331601eafe9fdb5a22303031551ee1607aac2a 100644 (file)
--- a/os/os.h
+++ b/os/os.h
@@ -17,11 +17,14 @@ enum {
        os_netbsd,
        os_solaris,
        os_windows,
+       os_android,
 
        os_nr,
 };
 
-#if defined(__linux__)
+#if defined(__ANDROID__)
+#include "os-android.h"
+#elif defined(__linux__)
 #include "os-linux.h"
 #elif defined(__FreeBSD__)
 #include "os-freebsd.h"
@@ -41,11 +44,7 @@ enum {
 #error "unsupported os"
 #endif
 
-#ifdef FIO_HAVE_LIBAIO
-#include <libaio.h>
-#endif
-
-#ifdef FIO_HAVE_POSIXAIO
+#ifdef CONFIG_POSIXAIO
 #include <aio.h>
 #ifndef FIO_OS_HAVE_AIOCB_TYPEDEF
 typedef struct aiocb os_aiocb_t;
@@ -57,7 +56,7 @@ typedef struct aiocb os_aiocb_t;
 #include <scsi/sg.h>
 #endif
 
-#ifndef FIO_HAVE_STRSEP
+#ifndef CONFIG_STRSEP
 #include "../lib/strsep.h"
 #endif
 
@@ -65,15 +64,11 @@ typedef struct aiocb os_aiocb_t;
 #define OS_MSG_DONTWAIT        MSG_DONTWAIT
 #endif
 
-#ifndef FIO_HAVE_FADVISE
-#define posix_fadvise(fd, off, len, advice)    (0)
-
 #ifndef POSIX_FADV_DONTNEED
 #define POSIX_FADV_DONTNEED    (0)
 #define POSIX_FADV_SEQUENTIAL  (0)
 #define POSIX_FADV_RANDOM      (0)
 #endif
-#endif /* FIO_HAVE_FADVISE */
 
 #ifndef FIO_HAVE_CPU_AFFINITY
 #define fio_setaffinity(pid, mask)     (0)
@@ -95,6 +90,7 @@ typedef unsigned long os_cpu_mask_t;
 
 #ifndef FIO_HAVE_HUGETLB
 #define SHM_HUGETLB                    0
+#define MAP_HUGETLB                    0
 #ifndef FIO_HUGE_PAGE
 #define FIO_HUGE_PAGE                  0
 #endif
@@ -104,6 +100,10 @@ typedef unsigned long os_cpu_mask_t;
 #endif
 #endif
 
+#ifndef FIO_HAVE_MMAP_HUGE
+#define MAP_HUGETLB                    0
+#endif
+
 #ifndef FIO_O_NOATIME
 #define FIO_O_NOATIME                  0
 #endif
@@ -112,12 +112,6 @@ typedef unsigned long os_cpu_mask_t;
 #define OS_RAND_MAX                    RAND_MAX
 #endif
 
-#ifdef FIO_HAVE_CLOCK_MONOTONIC
-#define FIO_TIMER_CLOCK CLOCK_MONOTONIC
-#else
-#define FIO_TIMER_CLOCK CLOCK_REALTIME
-#endif
-
 #ifndef FIO_HAVE_RAWBIND
 #define fio_lookup_raw(dev, majdev, mindev)    1
 #endif
@@ -131,15 +125,23 @@ typedef unsigned long os_cpu_mask_t;
 #endif
 
 #ifndef FIO_PREFERRED_CLOCK_SOURCE
+#ifdef CONFIG_CLOCK_GETTIME
 #define FIO_PREFERRED_CLOCK_SOURCE     CS_CGETTIME
+#else
+#define FIO_PREFERRED_CLOCK_SOURCE     CS_GTOD
+#endif
 #endif
 
 #ifndef FIO_MAX_JOBS
 #define FIO_MAX_JOBS           2048
 #endif
 
-#ifndef FIO_OS_HAVE_SOCKLEN_T
-typedef socklen_t fio_socklen_t;
+#ifndef CONFIG_SOCKLEN_T
+typedef unsigned int socklen_t;
+#endif
+
+#ifndef FIO_OS_HAS_CTIME_R
+#define os_ctime_r(x, y, z)     (void) ctime_r((x), (y))
 #endif
 
 #ifdef FIO_USE_GENERIC_SWAP
@@ -166,7 +168,8 @@ static inline uint64_t fio_swap64(uint64_t val)
 }
 #endif
 
-#ifdef FIO_LITTLE_ENDIAN
+#ifndef FIO_HAVE_BYTEORDER_FUNCS
+#ifdef CONFIG_LITTLE_ENDIAN
 #define __le16_to_cpu(x)               (x)
 #define __le32_to_cpu(x)               (x)
 #define __le64_to_cpu(x)               (x)
@@ -181,6 +184,7 @@ static inline uint64_t fio_swap64(uint64_t val)
 #define __cpu_to_le32(x)               fio_swap32(x)
 #define __cpu_to_le64(x)               fio_swap64(x)
 #endif
+#endif /* FIO_HAVE_BYTEORDER_FUNCS */
 
 #define le16_to_cpu(val) ({                    \
        uint16_t *__val = &(val);               \