[pve-devel] [PATCH v2 qemu-server 1/3] Fix #2816: remove timeout for allocation on restore
Thomas Lamprecht
t.lamprecht at proxmox.com
Thu Aug 20 10:56:24 CEST 2020
On 12.08.20 12:01, Fabian Ebner wrote:
> qcow2 images are allocated with --preallocation=metadata,
> which can take a while for large images.
>
> A 5 second timeout is set before reading the device map, so it's
s/seconds/minutes/ ?
> necessary to restore the old timeout before calling print_devmap().
> Time spent allocating now falls under that old timeout.
>
> Signed-off-by: Fabian Ebner <f.ebner at proxmox.com>
> ---
>
> Changes from v1:
> * instead of increasing the allocation timeout,
> get rid of it as Fabian suggested
>
> PVE/QemuServer.pm | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
> index a9c0dac..7169006 100644
> --- a/PVE/QemuServer.pm
> +++ b/PVE/QemuServer.pm
> @@ -6274,15 +6274,13 @@ sub restore_vma_archive {
> my ($dev_id, $size, $devname) = ($1, $2, $3);
> $devinfo->{$devname} = { size => $size, dev_id => $dev_id };
> } elsif ($line =~ m/^CTIME: /) {
> - # we correctly received the vma config, so we can disable
> - # the timeout now for disk allocation (set to 10 minutes, so
> - # that we always timeout if something goes wrong)
> - alarm(600);
> - &$print_devmap();
> - print $fifofh "done\n";
> + # we correctly received the vma config, so restore old timeout
> my $tmp = $oldtimeout || 0;
> $oldtimeout = undef;
> alarm($tmp);
> +
> + &$print_devmap();
> + print $fifofh "done\n";
> close($fifofh);
> }
> };
>
More information about the pve-devel
mailing list