backup: never try to freeze in stop mode backup

VM was can be true for stop mode backup, we cannot check the "is VM
currently running" as that doesn't tells us anything (could be the
backup process), so check the mode also..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
This commit is contained in:
Thomas Lamprecht 2020-05-03 11:13:36 +02:00
parent d60cbb97ec
commit cb521f2d88

View File

@ -389,7 +389,7 @@ sub archive_pbs {
die "interrupted by signal\n";
};
my $fs_frozen = $self->qga_fs_freeze($vmid);
my $fs_frozen = $self->qga_fs_freeze($task, $vmid);
my $params = {
format => "pbs",
@ -572,7 +572,7 @@ sub archive_vma {
$qmpclient->queue_cmd($vmid, $add_fd_cb, 'getfd', fd => $outfileno, fdname => "backup");
my $fs_frozen = $self->qga_fs_freeze($vmid);
my $fs_frozen = $self->qga_fs_freeze($task, $vmid);
eval { $qmpclient->queue_execute(30) };
my $qmperr = $@;
@ -640,8 +640,8 @@ sub _get_task_devlist {
}
sub qga_fs_freeze {
my ($self, $vmid) = @_;
return if !$self->{vmlist}->{$vmid}->{agent} || !$self->{vm_was_running};
my ($self, $task, $vmid) = @_;
return if !$self->{vmlist}->{$vmid}->{agent} || $task->{mode} eq 'stop' || !$self->{vm_was_running};
if (!PVE::QemuServer::qga_check_running($vmid, 1)) {
$self->loginfo("skipping guest-agent 'fs-freeze', agent configured but not running?");