diff options
Diffstat (limited to 'engines/posixaio.c')
-rw-r--r-- | engines/posixaio.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/posixaio.c b/engines/posixaio.c index 4c39a771..b454aa01 100644 --- a/engines/posixaio.c +++ b/engines/posixaio.c @@ -165,7 +165,13 @@ static int fio_posixaio_queue(struct thread_data fio_unused *td, ret = aio_read(aiocb); else if (io_u->ddir == DDIR_WRITE) ret = aio_write(aiocb); - else { + else if (io_u->ddir == DDIR_TRIM) { + if (pd->queued) + return FIO_Q_BUSY; + + do_io_u_trim(td, io_u); + return FIO_Q_COMPLETED; + } else { #ifdef FIO_HAVE_POSIXAIO_FSYNC ret = aio_fsync(O_SYNC, aiocb); #else |