[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 02/12] blockdev-backup: Use bdrv_lookup_bs on target
From: |
Stefan Hajnoczi |
Subject: |
[Qemu-devel] [PULL 02/12] blockdev-backup: Use bdrv_lookup_bs on target |
Date: |
Tue, 7 Jun 2016 15:26:15 +0100 |
From: Fam Zheng <address@hidden>
This allows backing up to a BDS that has not been attached to any BB.
Signed-off-by: Fam Zheng <address@hidden>
Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>
---
blockdev.c | 13 +++----------
1 file changed, 3 insertions(+), 10 deletions(-)
diff --git a/blockdev.c b/blockdev.c
index 717785e..ea7f397 100644
--- a/blockdev.c
+++ b/blockdev.c
@@ -3335,7 +3335,7 @@ void do_blockdev_backup(const char *device, const char
*target,
BlockdevOnError on_target_error,
BlockJobTxn *txn, Error **errp)
{
- BlockBackend *blk, *target_blk;
+ BlockBackend *blk;
BlockDriverState *bs;
BlockDriverState *target_bs;
Error *local_err = NULL;
@@ -3366,18 +3366,11 @@ void do_blockdev_backup(const char *device, const char
*target,
}
bs = blk_bs(blk);
- target_blk = blk_by_name(target);
- if (!target_blk) {
- error_setg(errp, "Device '%s' not found", target);
+ target_bs = bdrv_lookup_bs(target, target, errp);
+ if (!target_bs) {
goto out;
}
- if (!blk_is_available(target_blk)) {
- error_setg(errp, "Device '%s' has no medium", target);
- goto out;
- }
- target_bs = blk_bs(target_blk);
-
bdrv_set_aio_context(target_bs, aio_context);
backup_start(bs, target_bs, speed, sync, NULL, on_source_error,
on_target_error, block_job_cb, bs, txn, &local_err);
--
2.5.5
- [Qemu-devel] [PULL 00/12] Block patches, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 03/12] blockdev-backup: Don't move target AioContext if it's attached, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 01/12] tests: avoid coroutine pool test crash, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 02/12] blockdev-backup: Use bdrv_lookup_bs on target,
Stefan Hajnoczi <=
- [Qemu-devel] [PULL 04/12] virtio-blk: Remove op blocker for dataplane, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 05/12] virtio-scsi: Remove op blocker for dataplane, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 07/12] block/io: Remove unused bdrv_aio_write_zeroes(), Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 08/12] iostatus: fix comments for block_job_iostatus_reset, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 06/12] virtio: drop duplicate virtio_queue_get_id() function, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 11/12] block: Drop bdrv_ioctl_bh_cb, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 09/12] block/io: optimize bdrv_co_pwritev for small requests, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 10/12] block: Move BlockRequest type to io.c, Stefan Hajnoczi, 2016/06/07
- [Qemu-devel] [PULL 12/12] throttle: refuse iops-size without iops-total/read/write, Stefan Hajnoczi, 2016/06/07
- Re: [Qemu-devel] [PULL 00/12] Block patches, Peter Maydell, 2016/06/07