[Qemu-devel] Re: [PATCH 01/13] Add aiocb_mutex and aiocb_completion.

2011-01-06 Thread Arun R Bharadwaj
* Stefan Hajnoczi [2011-01-05 19:53:44]: > On Tue, Jan 04, 2011 at 10:57:08AM +0530, Arun R Bharadwaj wrote: > > @@ -545,13 +555,19 @@ static void paio_cancel(BlockDriverAIOCB *blockacb) > > } > > mutex_unlock(&lock); > > > > -if (active) {

[Qemu-devel] Re: [PATCH 03/13] Add callback function to ThreadletWork structure.

2011-01-06 Thread Arun R Bharadwaj
* Stefan Hajnoczi [2011-01-05 19:54:17]: > On Tue, Jan 04, 2011 at 10:57:20AM +0530, Arun R Bharadwaj wrote: > > +static void aio_thread(ThreadletWork *work) > > +{ > > aio_thread() is not a descriptive name here. This isn't the top-level > thread function, just t

Re: [Qemu-devel] [PATCH 00/13] Threadlets infrastructure.

2011-01-04 Thread Arun R Bharadwaj
* Venkateswararao Jujjuri (JV) [2011-01-04 15:13:45]: > On 1/3/2011 9:27 PM, Arun R Bharadwaj wrote: > > Hi, > > > > This patch series implements threadlets infrastructure in qemu. > > > > This is a complete rework of the earlier patch series so that > &

[Qemu-devel] [PATCH 11/13] Move threadlet code to qemu-threadlets.c

2011-01-03 Thread Arun R Bharadwaj
This patch moves the threadlet queue API code to qemu-threadlets.c where these APIs can be used by other subsystems. Signed-off-by: Arun R Bharadwaj --- Makefile.objs |1 posix-aio-compat.c | 151 qemu-thread.h |1 qemu

[Qemu-devel] [PATCH 10/13] Remove all instances of CONFIG_THREAD

2011-01-03 Thread Arun R Bharadwaj
Remove all instances of CONFIG_THREAD, which is not used anymore. Signed-off-by: Arun R Bharadwaj --- configure |2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/configure b/configure index a079a49..addf733 100755 --- a/configure +++ b/configure @@ -2456,7 +2456,6 @@ if

[Qemu-devel] [PATCH 08/13] Remove thread_create routine.

2011-01-03 Thread Arun R Bharadwaj
Remove thread_create and use qemu_thread_create instead. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 19 ++- 1 files changed, 2 insertions(+), 17 deletions(-) diff --git a/posix-aio-compat.c b/posix-aio-compat.c index fd9fcfd..3b01c9b 100644 --- a/posix-aio

[Qemu-devel] [PATCH 12/13] Threadlets: Add functionality to create private queues.

2011-01-03 Thread Arun R Bharadwaj
This patch allows subsystems to create their own private queues with associated pools of threads. Signed-off-by: Arun R Bharadwaj --- qemu-threadlets.c | 80 ++--- qemu-threadlets.h |4 +++ 2 files changed, 62 insertions(+), 22 deletions

[Qemu-devel] [PATCH 07/13] Remove active field in qemu_aiocb structure.

2011-01-03 Thread Arun R Bharadwaj
The active field in the qemu_aiocb structure is now useless. Remove it. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 17 ++--- 1 files changed, 6 insertions(+), 11 deletions(-) diff --git a/posix-aio-compat.c b/posix-aio-compat.c index 8f1a9b6..fd9fcfd 100644 --- a

[Qemu-devel] [PATCH 09/13] Threadlet: Add aio_signal_handler threadlet API

2011-01-03 Thread Arun R Bharadwaj
This patch adds aio_signal_handler threadlet API. Earler posix-aio-compat.c had its own signal handler code. Now abstract this, in the later patch it is moved to a generic code so that it can be used by other subsystems. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 49

[Qemu-devel] [PATCH 13/13] Threadlets: Add documentation

2011-01-03 Thread Arun R Bharadwaj
Signed-off-by: Arun R Bharadwaj Signed-off-by: Gautham R Shenoy --- docs/async-support.txt | 141 1 files changed, 141 insertions(+), 0 deletions(-) create mode 100644 docs/async-support.txt diff --git a/docs/async-support.txt b/docs/async

[Qemu-devel] [PATCH 06/13] Threadlet: Add dequeue_work threadlet API

2011-01-03 Thread Arun R Bharadwaj
This patch adds dequeue_work threadlet API and shows how the paio_cancel changes to dequeue_work. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 46 ++ 1 files changed, 26 insertions(+), 20 deletions(-) diff --git a/posix-aio-compat.c b

[Qemu-devel] [PATCH 05/13] Threadlet: Add submit_work threadlet API.

2011-01-03 Thread Arun R Bharadwaj
This patch adds submit work threadlet API and shows how the qemu_paio_submit changes to submit_work. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 33 ++--- 1 files changed, 22 insertions(+), 11 deletions(-) diff --git a/posix-aio-compat.c b/posix-aio

[Qemu-devel] [PATCH 04/13] Add ThreadletQueue.

2011-01-03 Thread Arun R Bharadwaj
This patch adds a global queue of type ThreadletQueue and removes the earlier usage of request_list queue. We want to create the thread on the first submit. Hence we need to track whether the globalqueue is initialized or not. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 161

[Qemu-devel] [PATCH 03/13] Add callback function to ThreadletWork structure.

2011-01-03 Thread Arun R Bharadwaj
This patch adds the callback function to the ThreadletWork structure and moves aio handler as a callback function. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 88 +--- 1 files changed, 49 insertions(+), 39 deletions(-) diff --git a

[Qemu-devel] [PATCH 02/13] Introduce work concept in posix-aio-compat.c

2011-01-03 Thread Arun R Bharadwaj
This patch introduces work concept by introducing the ThreadletWork structure. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 20 ++-- 1 files changed, 14 insertions(+), 6 deletions(-) diff --git a/posix-aio-compat.c b/posix-aio-compat.c index ae5e20e..de52eb5

[Qemu-devel] [PATCH 01/13] Add aiocb_mutex and aiocb_completion.

2011-01-03 Thread Arun R Bharadwaj
the Makefile entry to compile qemu-thread.c when CONFIG_POSIX is set, instead of the unused CONFIG_THREAD. Signed-off-by: Arun R Bharadwaj --- Makefile.objs |2 +- posix-aio-compat.c | 37 - 2 files changed, 29 insertions(+), 10 deletions(-) diff

[Qemu-devel] [PATCH 00/13] Threadlets infrastructure.

2011-01-03 Thread Arun R Bharadwaj
Hi, This patch series implements threadlets infrastructure in qemu. This is a complete rework of the earlier patch series so that it becomes easier to review. I have broken down the earlier patch series as asked by Anthony The following series implements... --- Arun R Bharadwaj (13

[Qemu-devel] [PATCH 5/6] Move threadlets infrastructure to qemu-threadlets.c

2010-11-18 Thread Arun R Bharadwaj
The reason for creating this generic infrastructure is so that other subsystems, such as virtio-9p could make use of it for offloading tasks that could block. Signed-off-by: Arun R Bharadwaj Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Acked-by

[Qemu-devel] [PATCH 4/6] Cleanup posix-aio.compat.c off all the old code.

2010-11-18 Thread Arun R Bharadwaj
Cleanup posix-aio.compat.c off all the old code which is now useless after introducing the generic threadlet infrasturcture. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 57 +--- 1 files changed, 1 insertions(+), 56 deletions

[Qemu-devel] [PATCH 2/6] Move paio_cancel() to new infrastructure.

2010-11-18 Thread Arun R Bharadwaj
Move paio_cancel() to new infrastructure and introduce the necessary APIs for this. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 92 ++-- 1 files changed, 74 insertions(+), 18 deletions(-) diff --git a/posix-aio-compat.c b/posix-aio

[Qemu-devel] [PATCH 3/6] Move qemu_paio_submit() to the new infrastructure.

2010-11-18 Thread Arun R Bharadwaj
Move qemu_paio_submit() to the new infrastructure and introduce the necessary APIs. Signed-off-by: Arun R Bharadwaj --- posix-aio-compat.c | 224 ++-- 1 files changed, 147 insertions(+), 77 deletions(-) diff --git a/posix-aio-compat.c b/posix

[Qemu-devel] [PATCH 1/6] Make the necessary changes in Makefile and configure file.

2010-11-18 Thread Arun R Bharadwaj
Signed-off-by: Arun R Bharadwaj --- Makefile.objs |2 +- configure |2 -- 2 files changed, 1 insertions(+), 3 deletions(-) diff --git a/Makefile.objs b/Makefile.objs index cd5a24b..3b7ec27 100644 --- a/Makefile.objs +++ b/Makefile.objs @@ -9,6 +9,7 @@ qobject-obj-y += qerror.o

[Qemu-devel] [PATCH 6/6] Add helper functions to enable virtio-9p make use of the threadlets

2010-11-18 Thread Arun R Bharadwaj
From: Gautham R Shenoy infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to process any other guest operations while the processing of v9fs_io is in

[Qemu-devel] [PATCH 0/6] v12: Threadlets: A generic task offloading framework.

2010-11-18 Thread Arun R Bharadwaj
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

Re: [Qemu-devel] [PATCH 1/3] Make paio subsystem use threadlets infrastructure

2010-11-18 Thread Arun R Bharadwaj
* Anthony Liguori [2010-11-15 15:13:24]: > On 11/15/2010 11:53 AM, Arun R Bharadwaj wrote: > >From: Gautham R Shenoy > > > >This patch creates a generic asynchronous-task-offloading infrastructure > >named > >threadlets. > > > >The patch creates a

[Qemu-devel] [PATCH 3/3] Add helper functions to enable virtio-9p make use of the threadlets

2010-11-15 Thread Arun R Bharadwaj
From: Gautham R Shenoy infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to process any other guest operations while the processing of v9fs_io is in

[Qemu-devel] [PATCH 2/3] Move threadlets infrastructure to qemu-threadlets.c

2010-11-15 Thread Arun R Bharadwaj
The reason for creating this generic infrastructure is so that other subsystems, such as virtio-9p could make use of it for offloading tasks that could block. Signed-off-by: Arun R Bharadwaj Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Acked-by

[Qemu-devel] [PATCH 1/3] Make paio subsystem use threadlets infrastructure

2010-11-15 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch creates a generic asynchronous-task-offloading infrastructure named threadlets. The patch creates a global queue on-to which subsystems can queue their tasks to be executed asynchronously. The patch also provides API's that allow a subsystem to cre

[Qemu-devel] [PATCH 0/3] v11: Threadlets: A generic task offloading framework

2010-11-15 Thread Arun R Bharadwaj
-dbench -fsstress -disktest -cpu_hotplug -hackbench -sleeptest Changelog: * Moved the qemu_cond_broadcast to the right place. * Removed unnecessary extern qualifiers. The following series implements... --- Arun R Bharadwaj (1): Move threadlets

Re: [Qemu-devel] [PATCH 2/3] Move threadlets infrastructure to qemu-threadlets.c

2010-11-11 Thread Arun R Bharadwaj
* Stefan Hajnoczi [2010-11-10 13:47:22]: > On Wed, Nov 10, 2010 at 1:19 PM, Arun R Bharadwaj > wrote: > > The reason for creating this generic infrastructure is so that other > > subsystems, > > such as virtio-9p could make use of it for offloading tasks that could &

Re: [Qemu-devel] [PATCH 2/3] Move threadlets infrastructure to qemu-threadlets.c

2010-11-10 Thread Arun R Bharadwaj
* Blue Swirl [2010-11-10 17:29:30]: > On Wed, Nov 10, 2010 at 1:19 PM, Arun R Bharadwaj > wrote: > > The reason for creating this generic infrastructure is so that other > > subsystems, > > such as virtio-9p could make use of it for offloading tasks that could > >

Re: [Qemu-devel] [PATCH 1/3] Make paio subsystem use threadlets infrastructure

2010-11-10 Thread Arun R Bharadwaj
* Stefan Hajnoczi [2010-11-10 13:45:29]: > On Wed, Nov 10, 2010 at 1:19 PM, Arun R Bharadwaj > wrote: > > @@ -301,106 +431,58 @@ static ssize_t handle_aiocb_rw(struct qemu_paiocb > > *aiocb) > >     return nbytes; > >  } > > > > -static void

[Qemu-devel] [PATCH 3/3] Add helper functions to enable virtio-9p make use of the threadlets

2010-11-10 Thread Arun R Bharadwaj
From: Gautham R Shenoy infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to process any other guest operations while the processing of v9fs_io is in

[Qemu-devel] [PATCH 2/3] Move threadlets infrastructure to qemu-threadlets.c

2010-11-10 Thread Arun R Bharadwaj
The reason for creating this generic infrastructure is so that other subsystems, such as virtio-9p could make use of it for offloading tasks that could block. Signed-off-by: Arun R Bharadwaj Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi

[Qemu-devel] [PATCH 1/3] Make paio subsystem use threadlets infrastructure

2010-11-10 Thread Arun R Bharadwaj
ate a private queue with an associated pool of threads. The patch has been tested with fstress. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Arun R Bharadwaj Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi --- Makefile.objs |2 configure |2 posix-aio-com

[Qemu-devel] v10: [PATCH 0/3] Threadlets: A generic task offloading framework.

2010-11-10 Thread Arun R Bharadwaj
=y from the configure code. 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

Re: [Qemu-devel] [PATCH 1/3] Make paio subsystem use threadlets infrastructure

2010-11-09 Thread Arun R Bharadwaj
* Stefan Hajnoczi [2010-11-08 21:29:12]: > On Mon, Nov 8, 2010 at 2:33 PM, Arun R Bharadwaj > wrote: > > diff --git a/Makefile.objs b/Makefile.objs > > index cd5a24b..3b7ec27 100644 > > --- a/Makefile.objs > > +++ b/Makefile.objs > > @@ -9,6 +9,7 @@ qobject-

[Qemu-devel] [PATCH 1/3] Make paio subsystem use threadlets infrastructure

2010-11-08 Thread Arun R Bharadwaj
ate a private queue with an associated pool of threads. The patch has been tested with fstress. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Arun R Bharadwaj Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi --- Makefile.objs |2 posix-aio-compat.c |

[Qemu-devel] [PATCH 1/3] Make paio subsystem use threadlets infrastructure

2010-11-08 Thread Arun R Bharadwaj
* Arun R Bharadwaj [2010-11-08 16:16:50]: Make paio subsystem use threadlets infrastructure From: Aneesh Kumar K.V This patch creates a generic asynchronous-task-offloading infrastructure named threadlets. The patch creates a global queue on-to which subsystems can queue their tasks to be

Re: [Qemu-devel] [REFACTORED CODE] [PATCH 0/3] Threadlets: A generic task offloading framework.

2010-11-08 Thread Arun R Bharadwaj
* Arun R Bharadwaj [2010-11-08 16:16:50]: > Hi, > > This is the v9 of the refactored patch-series to have a generic > asynchronous task offloading framework (called threadlets) > within qemu. > > Testing carried out: I have run KVM autotest suite with this patch

[Qemu-devel] [REFACTORED CODE] [PATCH 0/3] Threadlets: A generic task offloading framework.

2010-11-08 Thread Arun R Bharadwaj
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

[Qemu-devel] [PATCH 2/3] Move threadlets infrastructure to qemu-threadlets.c

2010-11-08 Thread Arun R Bharadwaj
The reason for creating this generic infrastructure is so that other subsystems, such as virtio-9p could make use of it for offloading tasks that could block. Signed-off-by: Arun R Bharadwaj Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi

[Qemu-devel] [PATCH 3/3] Add helper functions to enable virtio-9p make use of the threadlets

2010-11-08 Thread Arun R Bharadwaj
From: Gautham R Shenoy infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to process any other guest operations while the processing of v9fs_io is in

Re: [Qemu-devel] [PATCH 1/3] Introduce threadlets

2010-11-04 Thread Arun R Bharadwaj
* Anthony Liguori [2010-11-01 08:40:36]: > On 10/26/2010 09:14 AM, Arun R Bharadwaj wrote: > >+Q.7: Apart from the global pool of threads, can I have my own private Queue > >? > >+A.7: Yes, the threadlets framework allows subsystems to create their own > >p

[Qemu-devel] [PATCH 3/3] Add helper functions to enable virtio-9p make use of the threadlets

2010-10-26 Thread Arun R Bharadwaj
From: Gautham R Shenoy infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to process any other guest operations while the processing of v9fs_io is in

[Qemu-devel] v8: [PATCH 0/3] Threadlets: A generic task offloading framework.

2010-10-26 Thread Arun R Bharadwaj
modifications is patch 3/3 which I had earlier overlooked. - Remove a couple of debug print statements. - Remove the unnecessary posix_aio_state check. The following series implements... --- Aneesh Kumar K.V (1): Introduce threadlets Gautham R Shenoy (2): Make paio subsystem use

[Qemu-devel] [PATCH 2/3] Make paio subsystem use threadlets

2010-10-26 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch makes the paio subsystem use the threadlet framework thereby decoupling asynchronous threading framework portion out of posix-aio-compat.c The patch has been tested with fstress. Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Signed-off-by

[Qemu-devel] [PATCH 1/3] Introduce threadlets

2010-10-26 Thread Arun R Bharadwaj
reads. [...@in.ibm.com: Facelift of the code, Documentation, cancel_threadlet and other helpers] Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Signed-off-by: Arun R Bharadwaj --- Makefile.objs |3 + docs/async-support.txt |

Re: [Qemu-devel] [PATCH 3/3] Add helper functions to enable virtio-9p make use of the threadlets

2010-10-21 Thread Arun R Bharadwaj
* Arun R Bharadwaj [2010-10-21 17:40:55]: > From: Gautham R Shenoy > > infrastructure for offloading blocking tasks such as making posix calls on > to the helper threads and handle the post_posix_operations() from the > context of the iothread. This frees the vcpu thread to pr

[Qemu-devel] [PATCH 3/3] Add helper functions to enable virtio-9p make use of the threadlets

2010-10-21 Thread Arun R Bharadwaj
From: Gautham R Shenoy infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to process any other guest operations while the processing of v9fs_io is in

[Qemu-devel] [PATCH 1/3] Introduce threadlets

2010-10-21 Thread Arun R Bharadwaj
reads. [...@in.ibm.com: Facelift of the code, Documentation, cancel_threadlet and other helpers] Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Signed-off-by: Arun R Bharadwaj --- Makefile.objs |3 + docs/async-support.txt |

[Qemu-devel] [PATCH 2/3] Make paio subsystem use threadlets

2010-10-21 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch makes the paio subsystem use the threadlet framework thereby decoupling asynchronous threading framework portion out of posix-aio-compat.c The patch has been tested with fstress. Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Signed-off-by

[Qemu-devel] [PATCH 0/3]: v7: Threadlets: A generic task offloading framework.

2010-10-21 Thread Arun R Bharadwaj
->active in paio_cancel() --- Aneesh Kumar K.V (1): Introduce threadlets Gautham R Shenoy (2): Make paio subsystem use threadlets Add helper functions to enable virtio-9p make use of the threadlets Makefile.objs |3 - docs/async-support.txt |

Re: [Qemu-devel] [PATCH 2/3] Make paio subsystem use threadlets

2010-10-21 Thread Arun R Bharadwaj
* Stefan Hajnoczi [2010-10-20 10:30:38]: > On Tue, Oct 19, 2010 at 6:43 PM, Arun R Bharadwaj > wrote: > > From: Gautham R Shenoy > > > > This patch makes the paio subsystem use the threadlet framework thereby > > decoupling asynchronous threading framework portion

[Qemu-devel] [PATCH 1/3] Introduce threadlets

2010-10-19 Thread Arun R Bharadwaj
reads. [...@in.ibm.com: Facelift of the code, Documentation, cancel_threadlet and other helpers] Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Signed-off-by: Arun R Bharadwaj --- Makefile.objs |3 + docs/async-support.txt |

[Qemu-devel] [PATCH 2/3] Make paio subsystem use threadlets

2010-10-19 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch makes the paio subsystem use the threadlet framework thereby decoupling asynchronous threading framework portion out of posix-aio-compat.c The patch has been tested with fstress. Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi --- posix-aio

[Qemu-devel] [PATCH 3/3] Add helper functions for virtio-9p to use threadlets

2010-10-19 Thread Arun R Bharadwaj
From: Gautham R Shenoy Add helper functions to enable virtio-9p make use of the threadlets infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to

[Qemu-devel] v6: [PATCH 0/3]: Threadlets: A generic task offloading framework

2010-10-19 Thread Arun R Bharadwaj
Change from v5: * Cleaned up a few minor typos pointed out by Stefan The following series implements... --- Aneesh Kumar K.V (1): Introduce threadlets Gautham R Shenoy (2): Make paio subsystem use threadlets Add helper functions for virtio-9p to use threadlets

Re: [Qemu-devel] [PATCH 1/3] Introduce threadlets

2010-10-18 Thread Arun R Bharadwaj
* Avi Kivity [2010-10-17 10:57:23]: > On 10/14/2010 11:32 PM, Venkateswararao Jujjuri (JV) wrote: > >> > >> Blocking is somewhat against the spirit of the thing, no? While I agree > >> that > >> the current cancel API is hard to use correctly, blocking defeats the > >> purpose of > >> the

[Qemu-devel] [PATCH 9/9] Convert write into 2nd threading model.

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi Signed-off-by: Sripathi Kodi --- hw/virtio-9p.c | 92 +--- hw/virtio-9p.h |4 ++ 2 files changed, 39 insertions(+), 57 deletions(-) diff --git a/hw/virtio-9p.c b/hw/virtio-9p.c index 82f0ed2..47bcbd1 100644 --- a/hw/

[Qemu-devel] [PATCH 7/9] Convert walk into 2nd threading model

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi Signed-off-by: Sripathi Kodi --- hw/virtio-9p.c | 161 ++-- hw/virtio-9p.h |5 ++ 2 files changed, 68 insertions(+), 98 deletions(-) diff --git a/hw/virtio-9p.c b/hw/virtio-9p.c index cad21fd..e08f284 100644 --- a/hw/

[Qemu-devel] [PATCH 5/9] Convert wstat into 2nd threading model

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi In this model we hand over the vcpu thread only executes till the first blocking operation. It then hands over the call to the worker thread, which does everything needed to complete the call. It can make multiple blocking calls. It finally signals the IO threa

[Qemu-devel] [PATCH 6/9] Convert open into 2nd threading model

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi Signed-off-by: Sripathi Kodi --- hw/virtio-9p.c | 115 +++- hw/virtio-9p.h |4 ++ 2 files changed, 51 insertions(+), 68 deletions(-) diff --git a/hw/virtio-9p.c b/hw/virtio-9p.c index 1f2fd9f..cad21fd 100644 --- a/hw/

[Qemu-devel] [PATCH 8/9] Convert read into 2nd threading model

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi Signed-off-by: Sripathi Kodi --- hw/virtio-9p.c | 253 +++- hw/virtio-9p.h |4 + 2 files changed, 91 insertions(+), 166 deletions(-) diff --git a/hw/virtio-9p.c b/hw/virtio-9p.c index e08f284..82f0ed2 100644 --- a/hw/

[Qemu-devel] [PATCH 1/9] Add read-write lock to QEMU

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi Signed-off-by: Sripathi Kodi --- qemu-thread.c | 40 qemu-thread.h | 10 ++ 2 files changed, 50 insertions(+), 0 deletions(-) diff --git a/qemu-thread.c b/qemu-thread.c index fbc78fe..42774ff 100644 --- a/qemu-thread.c ++

[Qemu-devel] [PATCH 4/9] Convert stat into 2nd threading model

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi In this model we hand over the vcpu thread only executes till the first blocking operation. It then hands over the call to the worker thread, which does everything needed to complete the call. It can make multiple blocking calls. It finally signals the IO thread to do complete

[Qemu-devel] [PATCH 3/9] Global rename lock

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi --- hw/virtio-9p.c |3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/hw/virtio-9p.c b/hw/virtio-9p.c index 02a4ec4..ef6175a 100644 --- a/hw/virtio-9p.c +++ b/hw/virtio-9p.c @@ -21,6 +21,8 @@ int debug_9p_pdu; +QemuRWMutex global_rename_lock; +

[Qemu-devel] [PATCH 2/9] Introduce lock fid_list_lock to protect the fid list.

2010-10-14 Thread Arun R Bharadwaj
From: Sripathi Kodi Currently it is a normal mutex, but I will change it into a rw mutex. This should be held in read mode while looking up and in write mode while updating the list. Signed-off-by: Sripathi Kodi --- hw/virtio-9p.c | 32 +--- hw/virtio-9p.h |2

[Qemu-devel] [RFC PATCH 0/9] Second threading model.

2010-10-14 Thread Arun R Bharadwaj
Hi, This patch implements the second threading model. The first model can be referred here: http://www.mail-archive.com/qemu-devel@nongnu.org/msg43846.html The features of the second threading model: * The VCPU thread runs the Qemu code until the first blocking call is encountered. * The work

[Qemu-devel] [PATCH 6/6] This patch converts v9fs_walk() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_walk onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*walk* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 78

[Qemu-devel] [PATCH 5/6] This patch converts v9fs_open() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_open onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*open* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 86

[Qemu-devel] [PATCH 3/6] This patch converts v9fs_read() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_read onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*read* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy Signed-off-by: Arun R

[Qemu-devel] [PATCH 4/6] This patch converts v9fs_write() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_write onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*write* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy Signed-off-by: Arun R

[Qemu-devel] [PATCH 2/6] This patch converts v9fs_wstat() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_wstat onto the helper threads belonging to the threadlets infrastructure.The handling of the v9fs_post_*wstat* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 291

[Qemu-devel] [PATCH 1/6] This patch converts v9fs_stat() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy Every call to v9fs_stat() is processed in the context of the vcpu thread before offloading the actual stat operation onto an async-thread. The post operation is handled in the context of the io-thread which in turn does the complete() operation for this particular

[Qemu-devel] [RFC PATCH 0/6] First threading model

2010-10-13 Thread Arun R Bharadwaj
series implements... --- Gautham R Shenoy (6): This patch converts v9fs_stat() to make use of the threadlets infrastructure. This patch converts v9fs_wstat() to make use of the threadlets infrastructure. This patch converts v9fs_read() to make use of the threadlets

[Qemu-devel] [PATCH 4/6] This patch converts v9fs_write() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_write onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*write* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy Signed-off-by: Arun R

[Qemu-devel] [PATCH 2/6] This patch converts v9fs_wstat() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_wstat onto the helper threads belonging to the threadlets infrastructure.The handling of the v9fs_post_*wstat* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 291

[Qemu-devel] [PATCH 5/6] This patch converts v9fs_open() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_open onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*open* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 86

[Qemu-devel] [PATCH 6/6] This patch converts v9fs_walk() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_walk onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*walk* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 78

[Qemu-devel] [PATCH 3/6] This patch converts v9fs_read() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_read onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*read* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy Signed-off-by: Arun R

[Qemu-devel] [PATCH 1/6] This patch converts v9fs_stat() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy Every call to v9fs_stat() is processed in the context of the vcpu thread before offloading the actual stat operation onto an async-thread. The post operation is handled in the context of the io-thread which in turn does the complete() operation for this particular

[Qemu-devel] [RFC PATCH 0/6] First Threading Model

2010-10-13 Thread Arun R Bharadwaj
following series implements... --- Gautham R Shenoy (6): This patch converts v9fs_stat() to make use of the threadlets infrastructure. This patch converts v9fs_wstat() to make use of the threadlets infrastructure. This patch converts v9fs_read() to make use of the threadlets

[Qemu-devel] [PATCH 3/3]: Add helper functions for virtio-9p to use threadlets

2010-10-13 Thread Arun R Bharadwaj
* Arun R Bharadwaj [2010-10-13 22:14:39]: commit 1da2167c0c68bf24a841affa1bf6d2510cb675f2 Author: Gautham R Shenoy Date: Wed Oct 13 15:09:20 2010 +0530 Add helper functions for virtio-9p to use threadlets Add helper functions to enable virtio-9p make use of the threadlets

[Qemu-devel] [PATCH 2/3]: Make paio subsystem use threadlets

2010-10-13 Thread Arun R Bharadwaj
* Arun R Bharadwaj [2010-10-13 22:14:39]: Make paio subsystem use threadlets From: Gautham R Shenoy This patch makes the paio subsystem use the threadlet framework thereby decoupling asynchronous threading framework portion out of posix-aio-compat.c The patch has been tested with fstress

[Qemu-devel] [PATCH 1/3]: Introduce threadlets.

2010-10-13 Thread Arun R Bharadwaj
* Arun R Bharadwaj [2010-10-13 22:14:39]: commit 1fb4801768722016cd6ec9bbf1271c69b37df2a2 Author: Aneesh Kumar K.V Date: Tue Oct 12 14:06:10 2010 +0530 Introduce threadlets This patch creates a generic asynchronous-task-offloading infrastructure named threadlets. The core

[Qemu-devel] [PATCH 0/3]: Threadlets: A generic task offloading framework

2010-10-13 Thread Arun R Bharadwaj
at cpu_exit() with IO thread disabled. This version adds a signal handler for SIGUSR2 to call qemu_service_io() which calls cpu_exit() The following series implements... --- Aneesh Kumar K.V (1): Introduce threadlets Gautham R Shenoy (2): Make paio subsystem use threadlets

[Qemu-devel] [PATCH 1/6] This patch converts v9fs_stat() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy Every call to v9fs_stat() is processed in the context of the vcpu thread before offloading the actual stat operation onto an async-thread. The post operation is handled in the context of the io-thread which in turn does the complete() operation for this particular

[Qemu-devel] [PATCH 0/6] First threading model.

2010-10-13 Thread Arun R Bharadwaj
finished. * The VCPU/IO thread continues from immediately after the blocking call until the next blocking call is hit, and the whole process is repeated till no blocking call is encountered. The following series implements... --- Gautham R Shenoy (6): This patch converts v9fs_stat() to make

[Qemu-devel] [PATCH 5/6] This patch converts v9fs_open() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_open onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*open* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 86

[Qemu-devel] [PATCH 4/6] This patch converts v9fs_write() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_write onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*write* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy Signed-off-by: Arun R

[Qemu-devel] [PATCH 3/6] This patch converts v9fs_read() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_read onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*read* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy Signed-off-by: Arun R

[Qemu-devel] [PATCH 2/6] This patch converts v9fs_wstat() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_wstat onto the helper threads belonging to the threadlets infrastructure.The handling of the v9fs_post_*wstat* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 291

[Qemu-devel] [PATCH 6/6] This patch converts v9fs_walk() to make use of the threadlets infrastructure.

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch offloads all the blocking calls invoked for v9fs_walk onto the helper threads belonging to the threadlets infrastructure. The handling of the v9fs_post_*walk* calls is done from the io-thread context. Signed-off-by: Gautham R Shenoy --- hw/virtio-9p.c | 78

[Qemu-devel] [PATCH 3/3] Add helper functions for virtio-9p to use threadlets

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy Add helper functions to enable virtio-9p make use of the threadlets infrastructure for offloading blocking tasks such as making posix calls on to the helper threads and handle the post_posix_operations() from the context of the iothread. This frees the vcpu thread to

[Qemu-devel] [PATCH 2/3] Make paio subsystem use threadlets

2010-10-13 Thread Arun R Bharadwaj
From: Gautham R Shenoy This patch makes the paio subsystem use the threadlet framework thereby decoupling asynchronous threading framework portion out of posix-aio-compat.c The patch has been tested with fstress. Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi --- posix-aio

[Qemu-devel] [PATCH 1/3] Introduce threadlets

2010-10-13 Thread Arun R Bharadwaj
reads. [...@in.ibm.com: Facelift of the code, Documentation, cancel_threadlet and other helpers] Signed-off-by: Aneesh Kumar K.V Signed-off-by: Gautham R Shenoy Signed-off-by: Sripathi Kodi Signed-off-by: Arun R Bharadwaj --- Makefile.objs |3 + docs/async-support.txt |

[Qemu-devel] v5 [PATCH 0/3] qemu: Threadlets: A generic task offloading framework

2010-10-13 Thread Arun R Bharadwaj
at cpu_exit() with IO thread disabled. This version adds a signal handler for SIGUSR2 to call qemu_service_io() which calls cpu_exit() The following series implements... --- Aneesh Kumar K.V (1): Introduce threadlets Gautham R Shenoy (2): Make paio subsystem use threadlets

[Qemu-devel] qemu_cond_signal() taking a long time to complete.

2010-10-04 Thread Arun R Bharadwaj
Hi, I am working on introducing threading model into Qemu. This introduces the Threadlets infrastructure which allows subsystems to offload possibly blocking work to a queue to be processed by a pool of threads asynchrnonously. Threadlets are useful when there are operations that can be performed

Re: [Qemu-devel] [PATCH 1/2] [virtio-9p] Cleanup legacy 'dotu' variable.

2010-07-14 Thread Arun R Bharadwaj
* Venkateswararao Jujjuri (JV) [2010-07-14 04:25:21]: > Arun R Bharadwaj wrote: > > Hi, > > > > This patch cleans up the legacy 'dotu' variable which is always set to > > 1 by default, since qemu doesnt support legacy 9p clients. > > Do we have 2/2 i

<    2   3   4   5   6   7   8   >