- struct fio_file *f = io_u->file;
- struct gf_data *g = td->io_ops->data;
- struct fio_gf_iou *io = NULL;
-
- dprint(FD_FILE, "fio prep\n");
-
- io = malloc(sizeof(struct fio_gf_iou));
- if (!io){
- td_verror(td, errno, "malloc");
- return 1;
- }
- io->io_complete = 0;
- io->io_u = io_u;
- io_u->engine_data = io;
-
- g->aio_events = malloc(td->o.iodepth * sizeof(struct io_u *));
- if (!g->aio_events){
- td_verror(td, errno, "malloc");
- free(io);
- return 1;
- }
-
- memset(g->aio_events, 0, td->o.iodepth * sizeof(struct io_u *));
-
- if (!ddir_rw(io_u->ddir))
- return 0;
+ struct fio_gf_iou *io = io_u->engine_data;
+
+ if (io) {
+ if (io->io_complete){
+ log_err("incomplete IO found.\n");
+ }
+ io_u->engine_data = NULL;
+ free(io);
+ }
+}