fio.h: also check trim operations in fio_ro_check
authorVincent Fu <vincent.fu@wdc.com>
Fri, 15 Jun 2018 21:00:25 +0000 (15:00 -0600)
committerVincent Fu <vincent.fu@wdc.com>
Mon, 18 Jun 2018 17:10:26 +0000 (11:10 -0600)
IO engines call fio_ro_check to ensure that the data direction
set in the thread data structure permits writes before proceeding
with a write io_u. This patch makes fio_ro_check ensure that the
data direction also permits trims before proceeding with a trim
io_u.

fio.h

diff --git a/fio.h b/fio.h
index 9727f6c65556c4f937adad573cc2429a02ce6aa2..51b8fdc7cff7e51f12ed083b0338a3625c36380c 100644 (file)
--- a/fio.h
+++ b/fio.h
@@ -533,7 +533,8 @@ extern bool eta_time_within_slack(unsigned int time);
 
 static inline void fio_ro_check(const struct thread_data *td, struct io_u *io_u)
 {
-       assert(!(io_u->ddir == DDIR_WRITE && !td_write(td)));
+       assert(!(io_u->ddir == DDIR_WRITE && !td_write(td)) &&
+              !(io_u->ddir == DDIR_TRIM && !td_trim(td)));
 }
 
 #define REAL_MAX_JOBS          4096