From 2c0795e8803650b7e4b989917b721d03286fa92b Mon Sep 17 00:00:00 2001 From: Tomohiro Kusumi Date: Wed, 30 Aug 2017 00:12:13 +0300 Subject: [PATCH] add ifdef __sun__ for Solaris specific code ENOTTY on direct I/O setup failure via directio(3C) is Solaris (ZFS) specific (as also mentioned in ZoL commit[1]). Linux and many others which support O_DIRECT never come here, but others supporting direct I/O via OS specific way don't necessarily have the same ENOTTY behavior or ZFS itself. This commit brings back the original log before 42f1ee68 for others. [1] https://github.com/zfsonlinux/zfs/commit/a08c76a8ad63c28384ead72b53a3d7ef73f39357 Signed-off-by: Tomohiro Kusumi Signed-off-by: Jens Axboe --- ioengines.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ioengines.c b/ioengines.c index 6e6e3dea..6e135af4 100644 --- a/ioengines.c +++ b/ioengines.c @@ -505,12 +505,15 @@ int td_io_open_file(struct thread_data *td, struct fio_file *f) if (ret) { td_verror(td, ret, "fio_set_odirect"); +#if defined(__sun__) if (ret == ENOTTY) { /* ENOTTY suggests RAW device or ZFS */ log_err("fio: doing directIO to RAW devices or ZFS not supported\n"); } else { log_err("fio: the file system does not seem to support direct IO\n"); } - +#else + log_err("fio: the file system does not seem to support direct IO\n"); +#endif goto err; } } -- 2.25.1