Hi, This is the v9 of the refactored patch-series to have a generic asynchronous task offloading framework (called threadlets) within qemu.
Changes from earlier iteration: * Code is refactored such that it reflects the following: patch1: In-place code changes in paio subsystem to use the generic threadlets infrastructure. patch2: Move the threadlets infrastructure to a new file - qemu-threadlets.c patch3: Add helper functions to enable virtio-9p make use of the threadlets * Remove the infinite while loop in paio_cancel and use mutex to wait for request to complete. * Address the issue of dead code due to MAX_GLOBAL_THREADS = MIN_GLOBAL_THREADS The following series implements... --- Aneesh Kumar K.V (1): Make paio subsystem use threadlets infrastructure Arun R Bharadwaj (1): 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 - docs/async-support.txt | 141 ++++++++++++++++++++++++++++++++ hw/virtio-9p.c | 165 +++++++++++++++++++++++++++++++++++++ posix-aio-compat.c | 212 ++++++++++++------------------------------------ qemu-threadlets.c | 188 +++++++++++++++++++++++++++++++++++++++++++ qemu-threadlets.h | 49 +++++++++++ vl.c | 3 + 7 files changed, 599 insertions(+), 162 deletions(-) create mode 100644 docs/async-support.txt create mode 100644 qemu-threadlets.c create mode 100644 qemu-threadlets.h -- arun