Use true/false as return, signaling ok/busy.
Signed-off-by: Jens Axboe <axboe@fb.com>
break;
ret = workqueue_enqueue(&td->io_wq, io_u);
+ if (ret)
+ ret = FIO_Q_QUEUED;
+ else
+ ret = FIO_Q_BUSY;
if (ret == FIO_Q_QUEUED && ddir_rw(ddir)) {
td->io_issues[ddir]++;
}
/*
- * Must be serialized by caller.
+ * Must be serialized by caller. Returns true for queued, false for busy.
*/
-int workqueue_enqueue(struct workqueue *wq, struct io_u *io_u)
+bool workqueue_enqueue(struct workqueue *wq, struct io_u *io_u)
{
struct submit_worker *sw;
pthread_mutex_unlock(&sw->lock);
pthread_cond_signal(&sw->cond);
- return FIO_Q_QUEUED;
+ return true;
}
- return FIO_Q_BUSY;
+ return false;
}
static void handle_list(struct submit_worker *sw, struct flist_head *list)
int workqueue_init(struct thread_data *td, struct workqueue *wq, workqueue_fn *fn, unsigned int max_workers);
void workqueue_exit(struct workqueue *wq);
-int workqueue_enqueue(struct workqueue *wq, struct io_u *io_u);
+bool workqueue_enqueue(struct workqueue *wq, struct io_u *io_u);
void workqueue_flush(struct workqueue *wq);
#endif