From e658078b822e8144e87671006e3de352c4b07ce8 Mon Sep 17 00:00:00 2001 From: Tomohiro Kusumi Date: Tue, 28 Mar 2017 23:02:57 +0300 Subject: [PATCH] Ignore pre-read for character devices pre_read_file() could ignore a chrdev due to its purpose of providing unbuffered access to devices not limited to seekable disk devices, while the purpose of this function (i.e. pre_read= option) is to lseek(2) the given offset and page cache whatever read via read(2) which is basically for filesystems and blkdevs. (This commit directly goes on top of the one before previous one) Signed-off-by: Tomohiro Kusumi Signed-off-by: Jens Axboe --- filesetup.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/filesetup.c b/filesetup.c index cd486eaa..612e7947 100644 --- a/filesetup.c +++ b/filesetup.c @@ -239,6 +239,9 @@ static int pre_read_file(struct thread_data *td, struct fio_file *f) td_ioengine_flagged(td, FIO_NOIO)) return 0; + if (f->filetype == FIO_TYPE_CHAR) + return 0; + if (!fio_file_open(f)) { if (td->io_ops->open_file(td, f)) { log_err("fio: cannot pre-read, failed to open file\n"); -- 2.25.1