Re: [Qemu-devel] [PATCH][RFC] Linux AIO support when using O_DIRECT

Anthony Liguori
2009-03-23T17:15:05Z

Avi Kivity wrote:
>
> Instead of introducing yet another layer of indirection, you could add
> block-raw-linux-aio, which would be registered before block-raw-posix
> (which is realy block-raw-threadpool...), and resist a ->probe() if
> caching is enabled.

block-raw-posix needs a major overhaul. That's why I'm not even
considering committing the patch as is.

I'd like to see the O_DIRECT bounce buffering removed in favor of the
DMA API bouncing. Once that happens, raw_read and raw_pread can
disappear. block-raw-posix becomes much simpler.

We would drop the signaling stuff and have the thread pool use an fd to
signal. The big problem with that right now is that it'll cause a
performance regression for certain platforms until we have the IO thread
in place.

Regards,

Anthony Liguori