This patchset implements asynchronous deduplication in QCOW2 on top of the "QCOW2 deduplication metrics" V2 patchset.
It's a work in progress posted so reviewers can see where the feature is heading. v2: Merge qmp-pause-dedup and qmp-resume-dedup qmp-dedup control. [Eric] Simplify error handling with error_setg [Eric] fix spelling "s/support/supports/" [Eric] Benoît Canet (7): block: Add BlockDriver function prototype to pause and resume deduplication. qcow2: Add code to deduplicate cluster flagged with QCOW_OFLAG_TO_DEDUP. block: Add bdrv_has_dedup. block: Add bdrv_dedup_control to start and stop deduplication. qcow2: Add qcow2_dedup_control. qcow2: Make dedup status persists. qmp: Add block-dedup-control. block.c | 31 +++++++++ block/qcow2-dedup.c | 164 +++++++++++++++++++++++++++++++++++++++++++++ block/qcow2.c | 8 ++- block/qcow2.h | 2 + blockdev.c | 20 ++++++ include/block/block.h | 2 + include/block/block_int.h | 3 + qapi-schema.json | 19 ++++++ qmp-commands.hx | 25 +++++++ 9 files changed, 273 insertions(+), 1 deletion(-) -- 1.7.10.4