qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH for-2.7] block: Accept any target node for trans


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH for-2.7] block: Accept any target node for transactional blockdev-backup
Date: Wed, 3 Aug 2016 11:18:33 +0800
User-agent: Mutt/1.6.1 (2016-04-27)

On Tue, 08/02 19:22, Kevin Wolf wrote:
> Commit 0d978913 changed blockdev-backup to accept arbitrary node names
> instead of device names (i.e. root nodes) for the backup target.
> However, it forgot to make the same change in transactions and to update
> the documentation. This patch fixes these omissions.
> 
> Signed-off-by: Kevin Wolf <address@hidden>
> ---
>  blockdev.c           | 8 ++++----
>  qapi/block-core.json | 2 +-
>  2 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/blockdev.c b/blockdev.c
> index eafeba9..2161400 100644
> --- a/blockdev.c
> +++ b/blockdev.c
> @@ -1937,7 +1937,8 @@ static void blockdev_backup_prepare(BlkActionState 
> *common, Error **errp)
>  {
>      BlockdevBackupState *state = DO_UPCAST(BlockdevBackupState, common, 
> common);
>      BlockdevBackup *backup;
> -    BlockBackend *blk, *target;
> +    BlockBackend *blk;
> +    BlockDriverState *target;
>      Error *local_err = NULL;
>  
>      assert(common->action->type == TRANSACTION_ACTION_KIND_BLOCKDEV_BACKUP);
> @@ -1954,15 +1955,14 @@ static void blockdev_backup_prepare(BlkActionState 
> *common, Error **errp)
>          return;
>      }
>  
> -    target = blk_by_name(backup->target);
> +    target = bdrv_lookup_bs(backup->target, backup->target, errp);
>      if (!target) {
> -        error_setg(errp, "Device '%s' not found", backup->target);
>          return;
>      }
>  
>      /* AioContext is released in .clean() */
>      state->aio_context = blk_get_aio_context(blk);
> -    if (state->aio_context != blk_get_aio_context(target)) {
> +    if (state->aio_context != bdrv_get_aio_context(target)) {
>          state->aio_context = NULL;
>          error_setg(errp, "Backup between two IO threads is not implemented");
>          return;
> diff --git a/qapi/block-core.json b/qapi/block-core.json
> index 2bbc027..5e2d7d7 100644
> --- a/qapi/block-core.json
> +++ b/qapi/block-core.json
> @@ -927,7 +927,7 @@
>  #
>  # @device: the name of the device which should be copied.
>  #
> -# @target: the name of the backup target device.
> +# @target: the device name or node-name of the backup target node.
>  #
>  # @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
> -- 
> 1.8.3.1
> 
> 

Reviewed-by: Fam Zheng <address@hidden>



reply via email to

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