[pve-devel] [PATCH qemu-server 1/3] machine: split out helper for handling query-machines qmp command result
Fabian Ebner
f.ebner at proxmox.com
Mon Mar 1 16:53:25 CET 2021
to be re-used in the vmstatus() call.
Signed-off-by: Fabian Ebner <f.ebner at proxmox.com>
---
PVE/QemuServer/Machine.pm | 16 +++++++++++-----
1 file changed, 11 insertions(+), 5 deletions(-)
diff --git a/PVE/QemuServer/Machine.pm b/PVE/QemuServer/Machine.pm
index c168ade..2474951 100644
--- a/PVE/QemuServer/Machine.pm
+++ b/PVE/QemuServer/Machine.pm
@@ -18,11 +18,8 @@ sub machine_type_is_q35 {
return $conf->{machine} && ($conf->{machine} =~ m/q35/) ? 1 : 0;
}
-# this only works if VM is running
-sub get_current_qemu_machine {
- my ($vmid) = @_;
-
- my $res = PVE::QemuServer::Monitor::mon_cmd($vmid, 'query-machines');
+sub current_from_query_machines {
+ my ($res) = @_;
my ($current, $pve_version, $default);
foreach my $e (@$res) {
@@ -37,6 +34,15 @@ sub get_current_qemu_machine {
return $current || $default || 'pc';
}
+# this only works if VM is running
+sub get_current_qemu_machine {
+ my ($vmid) = @_;
+
+ my $res = PVE::QemuServer::Monitor::mon_cmd($vmid, 'query-machines');
+
+ return current_from_query_machines($res);
+}
+
# returns a string with major.minor+pve<VERSION>, patch version-part is ignored
# as it's seldom ressembling a real QEMU machine type, so it would be '0' 99% of
# the time anyway.. This explicitly separates pveversion from the machine.
--
2.20.1
More information about the pve-devel
mailing list