[PATCH] ->queue() error handling
[fio.git] / engines / fio-engine-libaio.c
index 5e394e3e477f0961ad65c8f65a619b1151c30ee6..daee65930b956984991ee0fce9482bff0e19310b 100644 (file)
@@ -78,9 +78,13 @@ static int fio_libaio_queue(struct thread_data *td, struct io_u *io_u)
                        break;
        } while (1);
 
-       assert(ret);
+       if (ret <= 0) {
+               io_u->resid = io_u->buflen;
+               io_u->error = -ret;
+               return 1;
+       }
 
-       return (int) -ret;
+       return 0;
 }
 
 static int fio_libaio_cancel(struct thread_data *td, struct io_u *io_u)