default:
io_u->error = err;
case ECANCELED:
+ io_u->resid = io_u->xfer_buflen;
case 0:
pd->aio_events[r++] = io_u;
io_u->seen = 1;
if (ret) {
io_u->error = errno;
- td_verror(td, io_u->error);
+ td_verror(td, io_u->error, "xfer");
+ return FIO_Q_COMPLETED;
}
-
- return io_u->error;
+
+ return FIO_Q_QUEUED;
}
static void fio_posixaio_cleanup(struct thread_data *td)