Add appropriate warning in mmap engine for large maps failing
On 32-bit archs, this can trigger for large files. This should be fixed by
mapping lazily, for now just catch the error.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
diff --git a/engines/mmap.c b/engines/mmap.c
index dffad90..5b8d800 100644
--- a/engines/mmap.c
+++ b/engines/mmap.c
@@ -79,8 +79,12 @@
f->mmap = mmap(NULL, f->io_size, flags, MAP_SHARED, f->fd, f->file_offset);
if (f->mmap == MAP_FAILED) {
+ int err = errno;
+
f->mmap = NULL;
- td_verror(td, errno, "mmap");
+ td_verror(td, err, "mmap");
+ if (err == EINVAL && f->io_size > 2*1024*1024*1024UL)
+ log_err("fio: mmap size likely too large\n");
goto err;
}