[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH 1/3] qmp: Add command 'blockdev-backup'
From: |
Kevin Wolf |
Subject: |
Re: [Qemu-devel] [PATCH 1/3] qmp: Add command 'blockdev-backup' |
Date: |
Fri, 31 Oct 2014 10:01:06 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Am 11.09.2014 um 07:05 hat Fam Zheng geschrieben:
> Similar to drive-backup, but this command uses a device id as target
> instead of creating/opening an image file.
>
> Also add blocker on target bs, since the target is also a named device
> now.
>
> Add check and report error for bs == target which became possible but is
> an illegal case with introduction of blockdev-backup.
>
> Signed-off-by: Fam Zheng <address@hidden>
> diff --git a/qapi/block-core.json b/qapi/block-core.json
> index a685d02..b953c7b 100644
> --- a/qapi/block-core.json
> +++ b/qapi/block-core.json
> @@ -669,6 +669,40 @@
> '*on-target-error': 'BlockdevOnError' } }
>
> ##
> +# @BlockdevBackup
> +#
> +# @device: the name of the device which should be copied.
> +#
> +# @target: the name of the backup target device.
Both of these are either a BlockBackend ID or a BDS node-name, right? Do
we have a standard way of expressing this? "name of the device" isn't
quite clear.
> +# @sync: what parts of the disk image should be copied to the destination
> +# (all the disk, only the sectors allocated in the topmost image, or
> +# only new I/O).
> +#
> +# @speed: #optional the maximum speed, in bytes per second.
> +#
> +# @on-source-error: #optional the action to take on an error on the source,
> +# default 'report'. 'stop' and 'enospc' can only be used
> +# if the block device supports io-status (see BlockInfo).
> +#
> +# @on-target-error: #optional the action to take on an error on the target,
> +# default 'report' (no limitations, since this applies to
> +# a different block device than @device).
> +#
> +# Note that @on-source-error and @on-target-error only affect background I/O.
> +# If an error occurs during a guest write request, the device's rerror/werror
> +# actions will be used.
> +#
> +# Since: 2.2
> +##
> +{ 'type': 'BlockdevBackup',
> + 'data': { 'device': 'str', 'target': 'str',
> + 'sync': 'MirrorSyncMode',
> + '*speed': 'int',
> + '*on-source-error': 'BlockdevOnError',
> + '*on-target-error': 'BlockdevOnError' } }
Kevin