Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/qemu/qemu_driver.c | 41 ++++++++++++++---------------------------
1 file changed, 14 insertions(+), 27 deletions(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index ac20d04353..7a2d8dde5e 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -14466,17 +14466,12 @@ qemuDomainBlockPullCommon(virDomainObj *vm,
{
qemuDomainObjPrivate *priv = vm->privateData;
virQEMUDriver *driver = priv->driver;
- const char *device = NULL;
- const char *jobname = NULL;
virDomainDiskDef *disk;
virStorageSource *baseSource = NULL;
- g_autofree char *basePath = NULL;
g_autofree char *backingPath = NULL;
unsigned long long speed = bandwidth;
qemuBlockJobData *job = NULL;
- bool persistjob = false;
const char *nodebase = NULL;
- bool blockdev = virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_BLOCKDEV);
int ret = -1;
if (flags & VIR_DOMAIN_BLOCK_REBASE_RELATIVE && !base) {
@@ -14511,8 +14506,7 @@ qemuDomainBlockPullCommon(virDomainObj *vm,
if (baseSource) {
if (flags & VIR_DOMAIN_BLOCK_REBASE_RELATIVE) {
- if (blockdev &&
- qemuBlockUpdateRelativeBacking(vm, disk->src, disk->src) < 0)
+ if (qemuBlockUpdateRelativeBacking(vm, disk->src, disk->src) < 0)
goto endjob;
if (virStorageSourceGetRelativeBackingPath(disk->src->backingStore,
@@ -14542,29 +14536,22 @@ qemuDomainBlockPullCommon(virDomainObj *vm,
if (!(job = qemuBlockJobDiskNewPull(vm, disk, baseSource, flags)))
goto endjob;
- if (blockdev) {
- jobname = job->name;
- persistjob = true;
- if (baseSource) {
- nodebase = baseSource->nodeformat;
- if (!backingPath &&
- !(backingPath = qemuBlockGetBackingStoreString(baseSource, false)))
- goto endjob;
- }
- device = disk->src->nodeformat;
- } else {
- device = job->name;
+ if (baseSource) {
+ nodebase = baseSource->nodeformat;
+ if (!backingPath &&
+ !(backingPath = qemuBlockGetBackingStoreString(baseSource, false)))
+ goto endjob;
}
qemuDomainObjEnterMonitor(driver, vm);
- if (!blockdev && baseSource)
- basePath = qemuMonitorDiskNameLookup(priv->mon, device, disk->src,
- baseSource);
-
- if (blockdev ||
- (!baseSource || basePath))
- ret = qemuMonitorBlockStream(priv->mon, device, jobname, persistjob,
basePath,
- nodebase, backingPath, speed);
+ ret = qemuMonitorBlockStream(priv->mon,
+ disk->src->nodeformat,
+ job->name,
+ true,
+ NULL,
+ nodebase,
+ backingPath,
+ speed);
qemuDomainObjExitMonitor(vm);
if (ret < 0)
--
2.36.1