projects
/
fio.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
engines/libzbc: Enable trim for libzbc I/O engine
[fio.git]
/
backend.c
diff --git
a/backend.c
b/backend.c
index 399c299e14aa6f518502e02cf94f1def7e713403..808e4362d1e369a16029bc10b8a7bd9c0bce4804 100644
(file)
--- a/
backend.c
+++ b/
backend.c
@@
-393,7
+393,7
@@
static bool break_on_this_error(struct thread_data *td, enum fio_ddir ddir,
td_clear_error(td);
*retptr = 0;
return false;
td_clear_error(td);
*retptr = 0;
return false;
- } else if (td->o.fill_device &&
err == ENOSPC
) {
+ } else if (td->o.fill_device &&
(err == ENOSPC || err == EDQUOT)
) {
/*
* We expect to hit this error if
* fill_device option is set.
/*
* We expect to hit this error if
* fill_device option is set.
@@
-1105,7
+1105,7
@@
reap:
if (td->trim_entries)
log_err("fio: %lu trim entries leaked?\n", td->trim_entries);
if (td->trim_entries)
log_err("fio: %lu trim entries leaked?\n", td->trim_entries);
- if (td->o.fill_device &&
td->error == ENOSPC
) {
+ if (td->o.fill_device &&
(td->error == ENOSPC || td->error == EDQUOT)
) {
td->error = 0;
fio_mark_td_terminate(td);
}
td->error = 0;
fio_mark_td_terminate(td);
}
@@
-1120,7
+1120,8
@@
reap:
if (i) {
ret = io_u_queued_complete(td, i);
if (i) {
ret = io_u_queued_complete(td, i);
- if (td->o.fill_device && td->error == ENOSPC)
+ if (td->o.fill_device &&
+ (td->error == ENOSPC || td->error == EDQUOT))
td->error = 0;
}
td->error = 0;
}
@@
-1406,7
+1407,7
@@
static int set_ioscheduler(struct thread_data *td, struct fio_file *file)
sprintf(tmp2, "[%s]", td->o.ioscheduler);
if (!strstr(tmp, tmp2)) {
sprintf(tmp2, "[%s]", td->o.ioscheduler);
if (!strstr(tmp, tmp2)) {
- log_err("fio:
io scheduler %s not found
\n", td->o.ioscheduler);
+ log_err("fio:
unable to set io scheduler to %s
\n", td->o.ioscheduler);
td_verror(td, EINVAL, "iosched_switch");
fclose(f);
return 1;
td_verror(td, EINVAL, "iosched_switch");
fclose(f);
return 1;