qemu-img : add -n option to dd to skip destination image create

master
Alexandre Derumier 2018-03-21 12:15:59 +01:00 committed by Wolfgang Bumiller
parent 8e326f3032
commit 46598e97c3
2 changed files with 68 additions and 0 deletions

View File

@ -0,0 +1,67 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Alexandre Derumier <aderumier@odiso.com>
Date: Wed, 21 Mar 2018 08:51:34 +0100
Subject: [PATCH] qemu-img dd : add -n skip_create
---
qemu-img.c | 23 ++++++++++++++---------
1 file changed, 14 insertions(+), 9 deletions(-)
diff --git a/qemu-img.c b/qemu-img.c
index 2605367c59..73aa18e086 100644
--- a/qemu-img.c
+++ b/qemu-img.c
@@ -4218,7 +4218,7 @@ static int img_dd(int argc, char **argv)
const char *fmt = NULL;
int64_t size = 0, readsize = 0;
int64_t block_count = 0, out_pos, in_pos;
- bool force_share = false;
+ bool force_share = false, skip_create = false;
struct DdInfo dd = {
.flags = 0,
.count = 0,
@@ -4256,7 +4256,7 @@ static int img_dd(int argc, char **argv)
{ 0, 0, 0, 0 }
};
- while ((c = getopt_long(argc, argv, ":hf:O:U", long_options, NULL))) {
+ while ((c = getopt_long(argc, argv, ":hf:O:U:n", long_options, NULL))) {
if (c == EOF) {
break;
}
@@ -4276,6 +4276,9 @@ static int img_dd(int argc, char **argv)
case 'h':
help();
break;
+ case 'n':
+ skip_create = true;
+ break;
case 'U':
force_share = true;
break;
@@ -4416,13 +4419,15 @@ static int img_dd(int argc, char **argv)
size - in.bsz * in.offset, &error_abort);
}
- ret = bdrv_create(drv, out.filename, opts, &local_err);
- if (ret < 0) {
- error_reportf_err(local_err,
- "%s: error while creating output image: ",
- out.filename);
- ret = -1;
- goto out;
+ if (!skip_create) {
+ ret = bdrv_create(drv, out.filename, opts, &local_err);
+ if (ret < 0) {
+ error_reportf_err(local_err,
+ "%s: error while creating output image: ",
+ out.filename);
+ ret = -1;
+ goto out;
+ }
}
/* TODO, we can't honour --image-opts for the target,
--
2.11.0

View File

@ -27,5 +27,6 @@ pve/0026-backup-introduce-vma-archive-format.patch
pve/0027-adding-old-vma-files.patch
pve/0028-vma-add-throttling-options-to-drive-mapping-fifo-pro.patch
pve/0029-qemu-img-dd-add-isize-parameter.patch
pve/0030-qemu-img-dd-add-n-skip_create.patch
extra/0001-Revert-target-i386-disable-LINT0-after-reset.patch
extra/0002-ratelimit-don-t-align-wait-time-with-slices.patch