|
From: | Paolo Bonzini |
Subject: | Re: [Qemu-devel] [PATCH 4/4] block: add bdrv_co_discard and bdrv_aio_discard support |
Date: | Fri, 14 Oct 2011 16:24:58 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:7.0) Gecko/20110927 Thunderbird/7.0 |
On 10/14/2011 04:23 PM, Kevin Wolf wrote:
> This similarly adds support for coroutine and asynchronous discard. > > Signed-off-by: Paolo Bonzini<address@hidden> Do we really need bdrv_discard and bdrv_aio_discard in the backends? I think it makes sense to have a bdrv_aio_discard() in block.h as AIO generally fits well for device models, but I would just require bdrv_co_discard for any block drivers implementing discard.
bdrv_discard is needed for now since I wouldn't like to conflate this patch with the qcow2 patch.
I can certainly drop aio_discard from the backends, but I'm not sure how heavy can fallocate be (with FALLOC_FL_PUNCH_HOLE). Probably not much, but I think there's no guarantee of O(1) behavior especially with filesystems like ecryptfs. So you would need to go through the thread pool and aio_discard would come in handy.
Paolo
[Prev in Thread] | Current Thread | [Next in Thread] |