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 <[email protected]>

Paolo

Reply via email to