On 04/11/2018 01:54 PM, Max Reitz wrote: > This patch implements active synchronous mirroring. In active mode, the > passive mechanism will still be in place and is used to copy all > initially dirty clusters off the source disk; but every write request > will write data both to the source and the target disk, so the source > cannot be dirtied faster than data is mirrored to the target. Also, > once the block job has converged (BLOCK_JOB_READY sent), source and > target are guaranteed to stay in sync (unless an error occurs). > > Active mode is completely optional and currently disabled at runtime. A > later patch will add a way for users to enable it. > > Signed-off-by: Max Reitz <mre...@redhat.com> > Reviewed-by: Fam Zheng <f...@redhat.com> > --- > qapi/block-core.json | 18 ++++ > block/mirror.c | 252 > ++++++++++++++++++++++++++++++++++++++++++++++++++- > 2 files changed, 265 insertions(+), 5 deletions(-) > > diff --git a/qapi/block-core.json b/qapi/block-core.json > index c50517bff3..8210d601f4 100644 > --- a/qapi/block-core.json > +++ b/qapi/block-core.json > @@ -1049,6 +1049,24 @@ > { 'enum': 'MirrorSyncMode', > 'data': ['top', 'full', 'none', 'incremental'] } > > +## > +# @MirrorCopyMode: > +# > +# An enumeration whose values tell the mirror block job when to > +# trigger writes to the target. > +# > +# @background: copy data in background only. > +# > +# @write-blocking: when data is written to the source, write it > +# (synchronously) to the target as well. In > +# addition, data is copied in background just like in > +# @background mode. > +# > +# Since: 2.12
Missed an instance of 2.13 -- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature