qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/3] block: Handle multiple write requests at on


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH 0/3] block: Handle multiple write requests at once
Date: Tue, 01 Sep 2009 11:08:10 -0500
User-agent: Thunderbird 2.0.0.23 (X11/20090825)

Christoph Hellwig wrote:
On Tue, Sep 01, 2009 at 03:51:49PM +0200, Kevin Wolf wrote:
virtio often issues multiple requests in a row, but each one independently. If
the block drivers knew all of the requests, they could optimize the way they
handle the requests. See the description of patch 3 for how qcow2 can use this
to avoid unnecessary writes to the disk.

I think this interface is extremly awkward and the layering is wrong.
Everyone benefits from having one large instead of multiple small
requests, so if we do get multiple sequential write requests we should
always merged it at a high level even before starting to issue AIO,
e.g. do it all in virtio-blk.

Or introduce a helper layer that coalesces requests that lives outside of the core block API.

I don't like the interface either although I'm not sure if the alternative is better. A different way to do this would be to have a queuing API. A device would queue requests and then kick the queue. This is closer to how virtio-blk works.

Regards,

Anthony Liguori




reply via email to

[Prev in Thread] Current Thread [Next in Thread]