[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 3/5] aio: add a ThreadPool instance to AioContex
From: |
Paolo Bonzini |
Subject: |
Re: [Qemu-devel] [PATCH 3/5] aio: add a ThreadPool instance to AioContext |
Date: |
Wed, 06 Mar 2013 18:24:37 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130219 Thunderbird/17.0.3 |
Il 06/03/2013 16:45, Stefan Hajnoczi ha scritto:
> This patch adds a ThreadPool to AioContext. It's possible that some
> AioContext instances will never use the ThreadPool, so defer creation
> until aio_get_thread_pool().
What lock should protect against doing this twice?
> The reason why AioContext should have the ThreadPool is because the
> ThreadPool is bound to a AioContext instance where the work item's
> callback function is invoked. It doesn't make sense to keep the
> ThreadPool pointer anywhere other than AioContext. For example,
> block/raw-posix.c can get its AioContext's ThreadPool and submit work.
>
> Special note about headers: I used struct ThreadPool in aio.h because
> there is a circular dependency if aio.h includes thread-pool.h.
Otherwise,
Reviewed-by: Paolo Bonzini <address@hidden>
Paolo
- [Qemu-devel] [PATCH 0/5] threadpool: support multiple ThreadPools, Stefan Hajnoczi, 2013/03/06
- [Qemu-devel] [PATCH 3/5] aio: add a ThreadPool instance to AioContext, Stefan Hajnoczi, 2013/03/06
- Re: [Qemu-devel] [PATCH 3/5] aio: add a ThreadPool instance to AioContext,
Paolo Bonzini <=
- [Qemu-devel] [PATCH 1/5] threadpool: move globals into struct ThreadPool, Stefan Hajnoczi, 2013/03/06
- [Qemu-devel] [PATCH 4/5] main-loop: add qemu_get_aio_context(), Stefan Hajnoczi, 2013/03/06
- [Qemu-devel] [PATCH 5/5] threadpool: drop global thread pool, Stefan Hajnoczi, 2013/03/06
- [Qemu-devel] [PATCH 2/5] threadpool: add thread_pool_new() and thread_pool_free(), Stefan Hajnoczi, 2013/03/06