Merge branch 'master' of ssh://brick.kernel.dk/data/git/fio
authorJens Axboe <jens.axboe@oracle.com>
Thu, 1 Oct 2009 17:38:41 +0000 (19:38 +0200)
committerJens Axboe <jens.axboe@oracle.com>
Thu, 1 Oct 2009 17:38:41 +0000 (19:38 +0200)
os/os-freebsd.h
os/os-solaris.h
os/os.h

index 26bb8a096790b40d4f4194b2288d1a955596f3b9..f4c5e235b698986e030ddc18f3dbd164ca918215 100644 (file)
@@ -6,23 +6,13 @@
 
 #define FIO_HAVE_POSIXAIO
 #define FIO_HAVE_ODIRECT
+#define FIO_USE_GENERIC_BDEV_SIZE
 
 #define OS_MAP_ANON            MAP_ANON
 
 typedef unsigned long os_cpu_mask_t;
 typedef unsigned int os_random_state_t;
 
-static inline int blockdev_size(int fd, unsigned long long *bytes)
-{
-       off_t end = lseek(fd, 0, SEEK_END);
-
-       if (end < 0)
-               return errno;
-
-       *bytes = end;
-       return 0;
-}
-
 static inline int blockdev_invalidate_cache(int fd)
 {
        return EINVAL;
index 5029d38f356e5983992bb58ae04cfffa77773a5d..ff8d6f25d6ca6a02497d7cab081873dad376a6c5 100644 (file)
@@ -12,6 +12,7 @@
 #define FIO_HAVE_POSIXAIO_FSYNC
 #define FIO_HAVE_CPU_AFFINITY
 #define FIO_HAVE_PSHARED_MUTEX
+#define FIO_USE_GENERIC_BDEV_SIZE
 
 #define OS_MAP_ANON            MAP_ANON
 #define OS_RAND_MAX            2147483648UL
@@ -23,17 +24,6 @@ struct solaris_rand_seed {
 typedef psetid_t os_cpu_mask_t;
 typedef struct solaris_rand_seed os_random_state_t;
 
-static inline int blockdev_size(int fd, unsigned long long *bytes)
-{
-       off_t end = lseek(fd, 0, SEEK_END);
-
-       if (end < 0)
-               return errno;
-
-       *bytes = end;
-       return 0;
-}
-
 static inline int blockdev_invalidate_cache(int fd)
 {
        return EINVAL;
diff --git a/os/os.h b/os/os.h
index 10e796fbcbe3313d1faee845bc26d751645aa011..1afb4b227521e3846b087d401b7297201d45cbbb 100644 (file)
--- a/os/os.h
+++ b/os/os.h
@@ -106,4 +106,17 @@ static inline int os_cache_line_size(void)
 #endif
 }
 
+#ifdef FIO_USE_GENERIC_BDEV_SIZE
+static inline int blockdev_size(int fd, unsigned long long *bytes)
+{
+       off_t end = lseek(fd, 0, SEEK_END);
+
+       if (end < 0)
+               return errno;
+
+       *bytes = end;
+       return 0;
+}
+#endif
+
 #endif