History | View | Annotate | Download (5.5 kB)
aio / timers: Add QEMUTimerListGroup to AioContext
Add a QEMUTimerListGroup each AioContext (meaning a QEMUTimerListassociated with each clock is added) and delete it when theAioContext is freed.
Signed-off-by: Alex Bligh <alex@alex.org.uk>Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
tests: adjust test-thread-pool to new aio_poll() semantics
aio_poll(ctx, true) will soon block when fd handlers have been set.Previously aio_poll() would return early if all .io_flush() returnedfalse. This means we need to check the equivalent of the .io_flush()...
add a header file for atomic operations
We're already using them in several places, but __sync builtins are justtoo ugly to type, and do not provide seqcst load/store operations.
Reviewed-by: Richard Henderson <rth@twiddle.net>Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
threadpool: drop global thread pool
Now that each AioContext has a ThreadPool and the main loop AioContextcan be fetched with bdrv_get_aio_context(), we can eliminate the conceptof a global thread pool from thread-pool.c.
The submit functions must take a ThreadPool* argument....
block: move include files to include/block/
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
tests: avoid qemu_aio_flush() in test-thread-pool.c
We need to eliminate calls to qemu_aio_flush() since the function isbeing removed. Most callers will use bdrv_drain_all() instead buttest-thread-pool.c is lower level.
Since the test uses the global AioContext we can loop on qemu_aio_wait()...
tests: make threadpool cancellation test looser
The cancellation test is failing on the buildbots. While the failuremerits a little more investigation to understand what is going on,the logs show that the failure is not impacting the coverageprovided by the test. Hence, loosen a bit the assertions in a...
tests: add thread pool unit tests
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>