summaryrefslogtreecommitdiff
path: root/os/os-solaris.h
AgeCommit message (Collapse)Author
2011-01-27solaris: OpenSolaris already has the madvise advice definedJens Axboe
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2011-01-26solaris: char dev size fixesJens Axboe
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2011-01-08Various fixes/updatesBruce Cran
- Update HOWTO to note that directio and fallocate don't work with ZFS on Solaris. Refactor the Makefile's to add CPPFLAGS and LIBS. - Add -fno-omit-frame-pointer from Linux Makefile to every platform - Change undefined $(ALL_CFLAGS) to $(CFLAGS) - Pass -std=gnu99, without which OS X fails to build. - Add -D__EXTENSIONS__ on Solaris since some functions we need are behind it. - Pull in <limits.h> in fio.c to get PTHREAD_STACK_MIN. - NetBSD doesn't define PTHREAD_STACK_MIN so set it to 4k in os-netbsd.h - If we have posix_fallocate don't error out if it fails during mutex and malloc operations since it will fail on Solaris with a ZFS filesystem. As I understand it these aren't performance-critical operations so do they need to be considered critical? - Remove fio_unused from os-* files since it's defined in fio.h and we don't really need it. - FreeBSD has an idprio command but not the API so don't claim it does. - OS X doesn't have the timer_* API so emulate it using setitimer/sigaction. - NetBSD and Solaris don't support CLOCK_MONOTONIC in timer_create so remove FIO_HAVE_CLOCK_MONOTONIC from their os-* files. I've noticed that a change I made a while ago to use fmin/fmax could cause issues on older OSes - I had a CD with NetBSD 5.0.2 and found they had only been implemented in 5.1 so I'm not sure if I should revert it. Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2011-01-04OS headers need fio_file definition nowJens Axboe
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2011-01-04FIO Windows updateBruce Cran
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
2009-12-20Make fdatasync OS optionalJens Axboe
OSX does not have it. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-12-16Add Solaris helper objectJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-12-16Make weak posix_memalign() private to SolarisJens Axboe
OSX has posix_memalign() but no memalign() and no malloc.h standard include. So until we have a autoconf based build system, move this weak helper to the private Solaris header. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-09-22Add generic bdev_size functionJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-08-04Add strong madvise() hint for cache pruningJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-08-04Remove old FIXME commentJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-08-04solaris: implement blockdev size gettingJens Axboe
Just use lseek(..., SEEK_END), we should actually be able to use that on all platforms. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-08-03Solaris cpu affinity fixJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-07-06Add support for async IO verification offloadJens Axboe
This adds support for setting up a number of IO verification offload threads, instead of doing the offload inline. An option for controlling the CPU affinity of those threads are always added. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-01-06OS includes need errno.hJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2009-01-05Only use process shared mutexes on support platformsJens Axboe
On FreeBSD, suggest the use of threads instead. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-12-22Solaris pset fixesJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-12-12Solaris compilation fixJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-12-12CPU set creation and destruction can fail on some platformsJens Axboe
Check for that and error out if necessary. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-12-12Support for CPU binding in SolarisJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-06-04Add OS agnostic RAND_MAXJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-06-04Solaris: support for proper random functionsJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-06-04Add directio support to SolarisJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-06-04Kill useless undef'sJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-06-02posixaio: not all platforms have aio_fsync()Jens Axboe
FreeBSD is (again) the odd man out... Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-06-02Guard posix_fallocate() behind OS defineJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2008-06-02Add Solaris native aio engineJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2007-07-26Fix verify random bytes fillingJens Axboe
Shawn Lewis <shawnlewis@google.com> reports: --- verify.c: fill_random_bytes() doesn't work as intended. drand48 on linux returns a double whose value is evenly distributed between 0.0 and 0.1. This is not the same as having an 8-byte value where each bit has the same chance of being 0 as it does of being 1. I'd fix this but it should probably be done in a cross-platformish way and I'm not quite sure how to do it. Maybe just use smaller randoms? Have an os_random_uint32? --- I just got rid of os_random_double() and used os_random_long(), truncating that to an unsigned integer. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
2007-04-02Move os/arch/compiler headers into directoriesJens Axboe
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>