}
}
- return progress;
+ assert(progress || busy);
+ return true;
}
events[ret - WAIT_OBJECT_0] = events[--count];
}
- return progress;
+ assert(progress || busy);
+ return true;
}
* aio as a result of executing I/O completion or bh callbacks.
*
* If there is no pending AIO operation or completion (bottom half),
- * return false. If there are pending bottom halves, return true.
+ * return false. If there are pending AIO operations of bottom halves,
+ * return true.
*
* If there are no pending bottom halves, but there are pending AIO
* operations, it may not be possible to make any progress without
* blocking. If @blocking is true, this function will wait until one
* or more AIO events have completed, to ensure something has moved
* before returning.
- *
- * If @blocking is false, this function will also return false if the
- * function cannot make any progress without blocking.
*/
bool aio_poll(AioContext *ctx, bool blocking);
event_notifier_set(&data.e);
g_assert(aio_poll(ctx, false));
g_assert_cmpint(data.n, ==, 1);
- g_assert(!aio_poll(ctx, false));
+ g_assert(aio_poll(ctx, false));
g_assert_cmpint(data.n, ==, 1);
event_notifier_set(&data.e);
g_assert(aio_poll(ctx, false));
g_assert_cmpint(data.n, ==, 2);
- g_assert(!aio_poll(ctx, false));
+ g_assert(aio_poll(ctx, false));
g_assert_cmpint(data.n, ==, 2);
event_notifier_set(&dummy.e);