[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH][RFC] Refactor AIO to allow multiple AIO impleme
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] Re: [PATCH][RFC] Refactor AIO to allow multiple AIO implementations |
Date: |
Thu, 11 Sep 2008 09:48:30 +0200 |
User-agent: |
Thunderbird 2.0.0.16 (X11/20080723) |
Anthony Liguori wrote:
> This patch refactors the AIO layer to allow multiple AIO implementations.
> It's
> only possible because of the recent signalfd() patch.
>
> Right now, the AIO infrastructure is pretty specific to the block raw backend.
> For other block devices to implement AIO, the qemu_aio_wait function must
> support
> registration. This patch introduces a new function, qmeu_aio_set_fd_handler,
> which
> can be used to register a file descriptor to be called back. qemu_aio_wait()
> now
> polls a set of file descriptors registered with this function until one
> becomes
> readable or writable.
Hmm, what is the long-term plan for this? Separating out the completion
notification is a nice first step. Most of the aio infrastructure is
still in the block raw backend though. IMHO it doesn't belong there.
The aio implementation(s) should be a separate entity usable by all
block backends to invoke aio requests, without having to care about how
this is actually implemented (threads, linux aio, posix aio, whatever).
cheers,
Gerd