This patch series makes the thread pool implementation modular. This allows each drive to use a special implementation. The patch series prepares qemu to be able to include thread pools different the one actually implemented. It will allow to implement approaches like paravirtualized block requests [1].
async.c | 4 ++-- block/raw-posix.c | 15 +++++++++++---- block/raw-win32.c | 9 +++++++-- blockdev.c | 13 +++++++++++++ include/block/aio.h | 2 +- include/block/thread-pool.h | 9 +++++++++ include/qemu-common.h | 2 ++ qemu-options.hx | 2 +- thread-pool.c | 32 ++++++++++++++++++++++++++++++++ 9 files changed, 78 insertions(+), 10 deletions(-) [1] http://www.linux-kvm.org/wiki/images/5/53/2012-forum-Brugger-lightningtalk.pdf