#include <unistd.h>
#include <stdlib.h>
-#include "../arch/arch.h"
+#include "../arch/arch.h" /* IWYU pragma: export */
#include "../lib/types.h"
enum {
os_nr,
};
+/* IWYU pragma: begin_exports */
#if defined(__ANDROID__)
#include "os-android.h"
#elif defined(__linux__)
#ifndef CONFIG_STRLCAT
#include "../oslib/strlcat.h"
#endif
+/* IWYU pragma: end_exports */
#ifdef MSG_DONTWAIT
#define OS_MSG_DONTWAIT MSG_DONTWAIT
#endif
#ifndef FIO_OS_PATH_SEPARATOR
-#define FIO_OS_PATH_SEPARATOR "/"
+#define FIO_OS_PATH_SEPARATOR '/'
#endif
#ifndef FIO_PREFERRED_CLOCK_SOURCE
#ifndef FIO_HAVE_BYTEORDER_FUNCS
#ifdef CONFIG_LITTLE_ENDIAN
+#define __be64_to_cpu(x) fio_swap64(x)
#define __le16_to_cpu(x) (x)
#define __le32_to_cpu(x) (x)
#define __le64_to_cpu(x) (x)
+#define __cpu_to_be64(x) fio_swap64(x)
#define __cpu_to_le16(x) (x)
#define __cpu_to_le32(x) (x)
#define __cpu_to_le64(x) (x)
#else
+#define __be64_to_cpu(x) (x)
#define __le16_to_cpu(x) fio_swap16(x)
#define __le32_to_cpu(x) fio_swap32(x)
#define __le64_to_cpu(x) fio_swap64(x)
+#define __cpu_to_be64(x) (x)
#define __cpu_to_le16(x) fio_swap16(x)
#define __cpu_to_le32(x) fio_swap32(x)
#define __cpu_to_le64(x) fio_swap64(x)
#endif /* FIO_HAVE_BYTEORDER_FUNCS */
#ifdef FIO_INTERNAL
+#define be64_to_cpu(val) ({ \
+ typecheck(uint64_t, val); \
+ __be64_to_cpu(val); \
+})
#define le16_to_cpu(val) ({ \
typecheck(uint16_t, val); \
__le16_to_cpu(val); \
})
#endif
+#define cpu_to_be64(val) ({ \
+ typecheck(uint64_t, val); \
+ __cpu_to_be64(val); \
+})
#define cpu_to_le16(val) ({ \
typecheck(uint16_t, val); \
__cpu_to_le16(val); \
}
#endif
+#if defined(CONFIG_POSIX_FALLOCATE) || defined(FIO_HAVE_NATIVE_FALLOCATE)
+# define FIO_HAVE_ANY_FALLOCATE
+#endif
+
#endif