qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2 00/16] block/mirror: Add active-sync mirrorin


From: Max Reitz
Subject: Re: [Qemu-devel] [PATCH v2 00/16] block/mirror: Add active-sync mirroring
Date: Sat, 24 Feb 2018 16:42:40 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0

Pïng

On 2018-01-22 23:07, Max Reitz wrote:
> This series implements an active and synchronous mirroring mode.
> 
> Currently, the mirror block job is passive an asynchronous: Depending on
> your start conditions, some part of the source disk starts as "dirty".
> Then, the block job will (as a background operation) continuously copy
> dirty parts to the target disk until all of the source disk is clean.
> In the meantime, any write to the source disk dirties the affected area.
> 
> One effect of this operational mode is that the job may never converge:
> If the writes to the source happen faster than the block job copies data
> to the target, the job can never finish.
> 
> When the active mode implemented in this series is enabled, every write
> request to the source will automatically trigger a synchronous write to
> the target right afterwards.  Therefore, the source can never get dirty
> faster than data is copied to the target.  Most importantly, once source
> and target are in sync (BLOCK_JOB_READY is emitted), they will not
> diverge (unless e.g. an I/O error occurs).
> 
> Active mirroring also improves on a second issue of the passive mode: We
> do not have to read data from the source in order to write it to the
> target.  When new data is written to the source in active mode, it is
> automatically mirrored to the target, which saves us the superfluous
> read from the source.

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]