Make raw disk size detection work on OSX
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
diff --git a/os/os-mac.h b/os/os-mac.h
index 06ea462..eb55cd7 100644
--- a/os/os-mac.h
+++ b/os/os-mac.h
@@ -24,6 +24,7 @@
#define FIO_HAVE_CLOCK_MONOTONIC
#define FIO_USE_GENERIC_RAND
#define FIO_HAVE_GETTID
+#define FIO_HAVE_CHARDEV_SIZE
#define OS_MAP_ANON MAP_ANON
@@ -135,6 +136,19 @@
return 0;
}
+static inline int chardev_size(struct fio_file *f, unsigned long long *bytes)
+{
+ /*
+ * Could be a raw block device, this is better than just assuming
+ * we can't get the size at all.
+ */
+ if (!blockdev_size(f, bytes))
+ return 0;
+
+ *bytes = -1ULL;
+ return 0;
+}
+
static inline int blockdev_invalidate_cache(struct fio_file *f)
{
return EINVAL;