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 <address@hidden>
---
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)