On 11/25/19 12:03 PM, Fabian Grünbichler wrote: > if we don't know which format the source volume/file has, let qemu-img > decide. >
While qemu-img's format probing through bdrv_probe_all is a bit wonky on its own, it's better to just assume raw, so applied. > Signed-off-by: Fabian Grünbichler <f.gruenbich...@proxmox.com> > --- > Notes: > v1->v2: > > drop definedness check, since $src_format can only either be undef or > true/non-empty > > CC Dominik, since he did the recent refactoring of qemu_img_convert ;) > > PVE/QemuServer.pm | 7 ++++--- > test/run_qemu_img_convert_tests.pl | 4 ++-- > 2 files changed, 6 insertions(+), 5 deletions(-) > > diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm > index fcedcf1..7cb3e36 100644 > --- a/PVE/QemuServer.pm > +++ b/PVE/QemuServer.pm > @@ -6715,7 +6715,7 @@ sub qemu_img_convert { > my $cachemode; > my $src_path; > my $src_is_iscsi = 0; > - my $src_format = 'raw'; > + my $src_format; > > if ($src_storeid) { > PVE::Storage::activate_volumes($storecfg, [$src_volid], $snapname); > @@ -6740,14 +6740,15 @@ sub qemu_img_convert { > > my $cmd = []; > push @$cmd, '/usr/bin/qemu-img', 'convert', '-p', '-n'; > - push @$cmd, '-l', "snapshot.name=$snapname" if($snapname && $src_format > eq "qcow2"); > + push @$cmd, '-l', "snapshot.name=$snapname" > + if $snapname && $src_format && $src_format eq "qcow2"; > push @$cmd, '-t', 'none' if $dst_scfg->{type} eq 'zfspool'; > push @$cmd, '-T', $cachemode if defined($cachemode); > > if ($src_is_iscsi) { > push @$cmd, '--image-opts'; > $src_path = convert_iscsi_path($src_path); > - } else { > + } elsif($src_format) { ^^^ squashed white-space error above > push @$cmd, '-f', $src_format; > } > > diff --git a/test/run_qemu_img_convert_tests.pl > b/test/run_qemu_img_convert_tests.pl > index 8a57108..bd5542f 100755 > --- a/test/run_qemu_img_convert_tests.pl > +++ b/test/run_qemu_img_convert_tests.pl > @@ -170,7 +170,7 @@ my $tests = [ > name => "efidisk", > parameters => [ "/usr/share/kvm/OVMF_VARS-pure-efi.fd", > "local:$vmid/vm-$vmid-disk-0.raw", 1024*10, undef, 0 ], > expected => [ > - "/usr/bin/qemu-img", "convert", "-p", "-n", "-f", "raw", "-O", > "raw", > + "/usr/bin/qemu-img", "convert", "-p", "-n", "-O", "raw", > "/usr/share/kvm/OVMF_VARS-pure-efi.fd", > "/var/lib/vz/images/$vmid/vm-$vmid-disk-0.raw", > ] > @@ -179,7 +179,7 @@ my $tests = [ > name => "efi2zos", > parameters => [ "/usr/share/kvm/OVMF_VARS-pure-efi.fd", > "zfs-over-iscsi:vm-$vmid-disk-0", 1024*10, undef, 0 ], > expected => [ > - "/usr/bin/qemu-img", "convert", "-p", "-n", "-f", "raw", > "--target-image-opts", > + "/usr/bin/qemu-img", "convert", "-p", "-n", "--target-image-opts", > "/usr/share/kvm/OVMF_VARS-pure-efi.fd", > > "file.driver=iscsi,file.transport=tcp,file.initiator-name=foobar,file.portal=127.0.0.1,file.target=iqn.2019-10.org.test:foobar,file.lun=1,driver=raw", > ] > _______________________________________________ pve-devel mailing list pve-devel@pve.proxmox.com https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel