qemu-block
[Top][All Lists]
Advanced

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

Re: [PATCH v2 18/19] qapi: backup: add immutable-source parameter


From: Markus Armbruster
Subject: Re: [PATCH v2 18/19] qapi: backup: add immutable-source parameter
Date: Wed, 01 Sep 2021 13:47:54 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.2 (gnu/linux)

Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> writes:

> We are on the way to implement internal-backup with fleecing scheme,
> which includes backup job copying from fleecing block driver node
> (which is target of copy-before-write filter) to final target of
> backup. This job doesn't need own filter, as fleecing block driver node
> is a kind of snapshot, it's immutable from reader point of view.
>
> Let's add a parameter for backup to not insert filter but instead
> unshare writes on source. This way backup job becomes a simple copying
> process.
>
> Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com>
> ---
>  qapi/block-core.json      | 12 +++++++-
>  include/block/block_int.h |  1 +
>  block/backup.c            | 61 +++++++++++++++++++++++++++++++++++----
>  block/replication.c       |  2 +-
>  blockdev.c                |  1 +
>  5 files changed, 70 insertions(+), 7 deletions(-)
>
> diff --git a/qapi/block-core.json b/qapi/block-core.json
> index 8a333136f5..995ca16a5e 100644
> --- a/qapi/block-core.json
> +++ b/qapi/block-core.json
> @@ -1391,6 +1391,15 @@
>  #                    above node specified by @drive. If this option is not 
> given,
>  #                    a node name is autogenerated. (Since: 4.2)
>  #
> +# @immutable-source: If true, assume source is immutable and don't insert 
> filter

Suggest comma after immutable.

> +#                    as no copy-before-write operations are needed. It will
> +#                    fail if there are existing writers on source node, as 
> well,
> +#                    any attempt to add writer to source node during backup 
> will
> +#                    fail. @filter-node-name must not be set.

Suggest to split the sentence like "... fail if there are existing
writers on source node.  Any attempt ... will also fail."

> +#                    If false, insert copy-before-write filter above source 
> node
> +#                    (see also @filter-node-name parameter).
> +#                    Default is false. (Since 6.2)
> +#
>  # @x-perf: Performance options. (Since 6.0)
>  #
>  # Note: @on-source-error and @on-target-error only affect background
> @@ -1407,7 +1416,8 @@
>              '*on-source-error': 'BlockdevOnError',
>              '*on-target-error': 'BlockdevOnError',
>              '*auto-finalize': 'bool', '*auto-dismiss': 'bool',
> -            '*filter-node-name': 'str', '*x-perf': 'BackupPerf'  } }
> +            '*filter-node-name': 'str', '*immutable-source': 'bool',
> +            '*x-perf': 'BackupPerf'  } }
>  
>  ##
>  # @DriveBackup:

[...]




reply via email to

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