Il 24/02/2014 11:26, Peter Lieven ha scritto:
I personally do not need this for QCOW2 but for iSCSI. Here the optimization is basically saved bandwidth since a zero write becomes a WRITESAME.
It saves bandwidth, but at the potential cost of extra host CPU utilization. I would be fine with having this automatically, but drv->bdrv_co_write_zeroes is not the right check because it is true for qcow2 and raw formats. Something using bdrv_get_info is probably better, because it would have fewer or no false positives.
In all cases if unmap=on it would additionally save disk space.
It would also cause worse performance though. I think the automatic addition BDRV_REQ_MAY_UNMAP is what should be a separate option. Perhaps you can have a three-state option, detect-zeros=no/yes/unmap.
Paolo