Hi, This is the v12 of the refactored patch-series to have a generic asynchronous task offloading framework (called threadlets) within qemu.
I have run KVM autotest suite with this patch. This test suite ran successfully for the following tests: -connecthon -ebizzy -dbench -fsstress -disktest -cpu_hotplug -hackbench -sleeptest Changelog: * Refactored the code in the following manner as asked by Anthony: * Earlier Patch1 has been broken down into 4 patches: 1) Make the necessary confiugation and Makefile changes. 2) Move paio_cancel to new infrastructure and introduce only those APIs needed for this. 3) Move paio_submit to new infrastructure and introduce only those APIs needed for this. 4) Clean up posix-aio.compat.c off all the old code. The following series implements... --- Arun R Bharadwaj (5): Make the necessary changes in Makefile and configure file. Move paio_cancel() to new infrastructure. Move qemu_paio_submit() to the new infrastructure. Cleanup posix-aio.compat.c off all the old code. Move threadlets infrastructure to qemu-threadlets.c Gautham R Shenoy (1): Add helper functions to enable virtio-9p make use of the threadlets Makefile.objs | 3 - configure | 2 docs/async-support.txt | 141 ++++++++++++++++++++++++++++++ hw/virtio-9p.c | 164 +++++++++++++++++++++++++++++++++++ posix-aio-compat.c | 225 +++++++++++------------------------------------- qemu-threadlets.c | 189 ++++++++++++++++++++++++++++++++++++++++ qemu-threadlets.h | 47 ++++++++++ vl.c | 3 + 8 files changed, 596 insertions(+), 178 deletions(-) create mode 100644 docs/async-support.txt create mode 100644 qemu-threadlets.c create mode 100644 qemu-threadlets.h -- arun