Hi, This series implements threadlets infrastructure:
Changelog: * Changed the name aio_thread to handle_work. * Corrected the usage of aiocb->ret which has to be accessed under aiocb_mutex. * Merged the patche which add dequeue_work with the patch which removes the unused active field in paio structure so that the logic of paio_cancel is not broken. Here are the details regarding the testing that has been carried out on the patchset: * kvm-autotest run with guest running fedora 14. The following tests were run successfully: disktest, bonnie, fsstress, blast, ffsb. * bonnie test run on fedora guest on block device. * iozone -l test run on fedora guest to stress the posix-aio-compat.c code. (suggested by Stefan) * windows guest installation test and iozone -l test run on windows guest. The following series implements... --- Arun R Bharadwaj (12): Add aiocb_mutex and aiocb_completion. Introduce work concept in posix-aio-compat.c Add callback function to ThreadletWork structure. Add ThreadletQueue. Threadlet: Add submit_work threadlet API. Threadlet: Add dequeue_work threadlet API and remove active field. Remove thread_create routine. Threadlet: Add aio_signal_handler threadlet API Remove all instances of CONFIG_THREAD Move threadlet code to qemu-threadlets.c Threadlets: Add functionality to create private queues. Threadlets: Add documentation Makefile.objs | 3 - configure | 2 docs/async-support.txt | 141 ++++++++++++++++++++++++++++ posix-aio-compat.c | 242 ++++++++++++------------------------------------ qemu-threadlets.c | 175 +++++++++++++++++++++++++++++++++++ qemu-threadlets.h | 47 +++++++++ vl.c | 3 + 7 files changed, 430 insertions(+), 183 deletions(-) create mode 100644 docs/async-support.txt create mode 100644 qemu-threadlets.c create mode 100644 qemu-threadlets.h -- arun