[pve-devel] [PATCH qemu-server] Fix ACPI-suspended VMs resuming after migration
Filip Schauer
f.schauer at proxmox.com
Wed Aug 23 12:58:39 CEST 2023
When migrating a VM that suspended itself via ACPI, it will no longer be
resumed automatically.
Signed-off-by: Filip Schauer <f.schauer at proxmox.com>
---
PVE/QemuMigrate.pm | 2 +-
PVE/QemuServer.pm | 10 ++++++++++
2 files changed, 11 insertions(+), 1 deletion(-)
diff --git a/PVE/QemuMigrate.pm b/PVE/QemuMigrate.pm
index 506911e..d9aeca8 100644
--- a/PVE/QemuMigrate.pm
+++ b/PVE/QemuMigrate.pm
@@ -223,7 +223,7 @@ sub prepare {
}
}
- $self->{vm_was_paused} = 1 if PVE::QemuServer::vm_is_paused($vmid);
+ $self->{vm_was_paused} = 1 if (PVE::QemuServer::vm_is_paused($vmid) or PVE::QemuServer::vm_is_suspended($vmid));
}
my ($loc_res, $mapped_res, $missing_mappings_by_node) = PVE::QemuServer::check_local_resources($conf, 1);
diff --git a/PVE/QemuServer.pm b/PVE/QemuServer.pm
index bf1de17..866b585 100644
--- a/PVE/QemuServer.pm
+++ b/PVE/QemuServer.pm
@@ -8599,6 +8599,16 @@ sub vm_is_paused {
return $qmpstatus && $qmpstatus->{status} eq "paused";
}
+sub vm_is_suspended {
+ my ($vmid) = @_;
+ my $qmpstatus = eval {
+ PVE::QemuConfig::assert_config_exists_on_node($vmid);
+ mon_cmd($vmid, "query-status");
+ };
+ warn "$@\n" if $@;
+ return $qmpstatus && $qmpstatus->{status} eq "suspended";
+}
+
sub check_volume_storage_type {
my ($storecfg, $vol) = @_;
--
2.39.2
More information about the pve-devel
mailing list