From: Kushal Kumaran <kushal@locationd.net>
To: fio@vger.kernel.org
Subject: [RFC PATCH] error out if ENOSPC during file layout
Date: Thu, 19 Nov 2020 21:00:05 -0800 [thread overview]
Message-ID: <87d0088vxm.fsf@copper.locationd.net> (raw)
Hi,
When I run fio with --create_only=1 and it runs out of space, it still
exits with status 0. I could not figure out if this was intentional
(except for the fill_device case, where this is obviously the expected
behavior).
$ cat ~/fio
[global]
ioengine=posixaio
rw=readwrite
size=2g
directory=${HOME}/mounts/testdisk
thread=1
[trivial-readwrite-1g]
$ df -h .
Filesystem Size Used Avail Use% Mounted on
/dev/loop6 976M 2.6M 907M 1% /home/kushal/mounts/testdisk
$ fio ~/fio --create_only=1
trivial-readwrite-1g: (g=0): rw=rw, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=pos
ixaio, iodepth=1
fio-3.12
Starting 1 thread
trivial-readwrite-1g: Laying out IO file (1 file / 2048MiB)
fio: ENOSPC on laying out file, stopping
Run status group 0 (all jobs):
Disk stats (read/write):
loop6: ios=0/0, merge=0/0, ticks=0/0, in_queue=0, util=0.00%
$ echo $?
0
A trivial patch for this gives me the behavior I expect.
---
filesetup.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/filesetup.c b/filesetup.c
index f4360a6f..42c5f630 100644
--- a/filesetup.c
+++ b/filesetup.c
@@ -231,13 +231,12 @@ static int extend_file(struct thread_data *td, struct fio_file *f)
break;
log_info("fio: ENOSPC on laying out "
"file, stopping\n");
- break;
}
td_verror(td, errno, "write");
} else
td_verror(td, EIO, "write");
- break;
+ goto err;
}
}
--
2.20.1
next reply other threads:[~2020-11-20 5:06 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-20 5:00 Kushal Kumaran [this message]
2020-11-22 14:29 ` [RFC PATCH] error out if ENOSPC during file layout Sitsofe Wheeler
2020-11-22 16:55 ` Jens Axboe
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87d0088vxm.fsf@copper.locationd.net \
--to=kushal@locationd.net \
--cc=fio@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.