#ifndef FIO_OS_AIX_H
#define FIO_OS_AIX_H
+#define FIO_OS os_aix
+
#include <errno.h>
#include <unistd.h>
#include <sys/devinfo.h>
#include <sys/ioctl.h>
+#include "../file.h"
+
#define FIO_HAVE_POSIXAIO
#define FIO_HAVE_ODIRECT
#define FIO_USE_GENERIC_RAND
+#define FIO_USE_GENERIC_INIT_RANDOM_STATE
+#define FIO_HAVE_CLOCK_MONOTONIC
/*
* This is broken on AIX if _LARGE_FILES is defined...
#define OS_MAP_ANON MAP_ANON
#define OS_MSG_DONTWAIT 0
-static inline int blockdev_invalidate_cache(int fd)
+#if BYTE_ORDER == BIG_ENDIAN
+#define FIO_BIG_ENDIAN
+#else
+#define FIO_LITTLE_ENDIAN
+#endif
+
+#define FIO_USE_GENERIC_SWAP
+
+#define FIO_OS_HAVE_SOCKLEN_T
+#define fio_socklen_t socklen_t
+
+static inline int blockdev_invalidate_cache(struct fio_file *f)
{
return EINVAL;
}
-static inline int blockdev_size(int fd, unsigned long long *bytes)
+static inline int blockdev_size(struct fio_file *f, unsigned long long *bytes)
{
struct devinfo info;
- if (!ioctl(fd, IOCINFO, &info)) {
+ if (!ioctl(f->fd, IOCINFO, &info)) {
*bytes = (unsigned long long)info.un.scdk.numblks *
info.un.scdk.blksize;
return 0;