The following changes since commit 9451b93e81fb950a80da09e295e56b1ad4538509: dedupe: improve 100% dedupe case (2015-04-27 09:37:11 -0600) are available in the git repository at: git://git.kernel.dk/fio.git master for you to fetch changes up to 76a00ec6684317902e536365b89531431e7f8867: blktrace: only set O_DIRECT if the min bs is a multiple of 4k (2015-04-28 15:30:02 -0600) ---------------------------------------------------------------- Jens Axboe (2): Add recommendation to set direct=0 if first O_DIRECT fails blktrace: only set O_DIRECT if the min bs is a multiple of 4k blktrace.c | 5 +++-- ioengines.c | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) --- Diff of recent changes: diff --git a/blktrace.c b/blktrace.c index 8ffa9b0..bb0bcbe 100644 --- a/blktrace.c +++ b/blktrace.c @@ -503,9 +503,10 @@ int load_blktrace(struct thread_data *td, const char *filename, int need_swap) /* * We need to do direct/raw ios to the device, to avoid getting - * read-ahead in our way. + * read-ahead in our way. But only do so if the minimum block size + * is a multiple of 4k, otherwise we don't know if it's safe to do so. */ - if (!fio_option_is_set(&td->o, odirect)) + if (!fio_option_is_set(&td->o, odirect) && !(td_min_bs(td) & 4095)) td->o.odirect = 1; /* diff --git a/ioengines.c b/ioengines.c index b724e0e..958731d 100644 --- a/ioengines.c +++ b/ioengines.c @@ -327,7 +327,8 @@ int td_io_queue(struct thread_data *td, struct io_u *io_u) td->o.odirect) { log_info("fio: first direct IO errored. File system may not " - "support direct IO, or iomem_align= is bad.\n"); + "support direct IO, or iomem_align= is bad. Try " + "setting direct=0.\n"); } if (!td->io_ops->commit || io_u->ddir == DDIR_TRIM) { -- To unsubscribe from this list: send the line "unsubscribe fio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html