From 792d551747e83601121afce033a66f357c9fc439 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Tue, 22 Sep 2009 17:12:29 +0200 Subject: [PATCH] Add generic bdev_size function Signed-off-by: Jens Axboe --- os/os-freebsd.h | 12 +----------- os/os-solaris.h | 12 +----------- os/os.h | 13 +++++++++++++ 3 files changed, 15 insertions(+), 22 deletions(-) diff --git a/os/os-freebsd.h b/os/os-freebsd.h index 26bb8a09..f4c5e235 100644 --- a/os/os-freebsd.h +++ b/os/os-freebsd.h @@ -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; diff --git a/os/os-solaris.h b/os/os-solaris.h index 5029d38f..ff8d6f25 100644 --- a/os/os-solaris.h +++ b/os/os-solaris.h @@ -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 10e796fb..1afb4b22 100644 --- 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 -- 2.25.1