On 05/08/2014 10:22 AM, Peter Lieven wrote: > this patch tries to optimize zero write requests > by automatically using bdrv_write_zeroes if it is > supported by the format. > > This significantly speeds up file system initialization and > should speed zero write test used to test backend storage > performance. >
> Signed-off-by: Peter Lieven <p...@kamp.de> > --- > v3->v4: - use QAPI generated enum and lookup table [Kevin] > - added more details about the options in the comments > of the qapi-schema [Eric] > - changed the type of detect_zeroes from str to > BlockdevDetectZeroesOptions. I left the name > as is because it is consistent with e.g. > BlockdevDiscardOptions or BlockdevAioOptions [Eric] > - changed the parse function in blockdev_init to > be generic usable for other enum parameters If you wouldn't mind, I think the generic function is useful enough that people might want to backport it independently from this optimization. It would be better to split this into a two-patch series, one for the new parse_enum_option, the other for bdrv_write_zeroes utilizing it. > + },{ > + .name = "detect-zeroes", > + .type = QEMU_OPT_STRING, > + .help = "try to optimize zero writes", Might be worth listing (off, on, unmap) in the text. Everything else looked okay, but I'll wait for R-b until I see a response about the idea of splitting the patch (even if that response is justification for keeping it as one) -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature