[pve-devel] [PATCH qemu-server v2 10/16] machine: include +pve version when getting installed machine version
Fiona Ebner
f.ebner at proxmox.com
Mon Oct 20 16:12:57 CEST 2025
Move the code attaching the +pve version from the single call site
into the get_installed_machine_version() helper. Rename the helper
to latest_installed_machine_version() to make it a bit more explicit.
This is in preparation for the upcoming qemu-storage-daemon
functionality re-using this helper.
Signed-off-by: Fiona Ebner <f.ebner at proxmox.com>
Reviewed-by: Daniel Kral <d.kral at proxmox.com>
Tested-by: Daniel Kral <d.kral at proxmox.com>
---
src/PVE/QemuServer/Machine.pm | 19 ++++++++++---------
1 file changed, 10 insertions(+), 9 deletions(-)
diff --git a/src/PVE/QemuServer/Machine.pm b/src/PVE/QemuServer/Machine.pm
index b2ff7e24..719b134d 100644
--- a/src/PVE/QemuServer/Machine.pm
+++ b/src/PVE/QemuServer/Machine.pm
@@ -308,11 +308,17 @@ sub qemu_machine_pxe {
return $machine;
}
-sub get_installed_machine_version {
+sub latest_installed_machine_version {
my ($kvmversion) = @_;
+
$kvmversion = PVE::QemuServer::Helpers::kvm_user_version() if !defined($kvmversion);
- $kvmversion =~ m/^(\d+\.\d+)/;
- return $1;
+
+ my ($version) = ($kvmversion =~ m/^(\d+\.\d+)/);
+
+ my $pvever = get_pve_version($version);
+ $version .= "+pve$pvever" if $pvever > 0;
+
+ return $version;
}
sub windows_get_pinned_machine_version {
@@ -320,12 +326,7 @@ sub windows_get_pinned_machine_version {
my $pin_version = $base_version;
if (!defined($base_version) || !can_run_pve_machine_version($base_version, $kvmversion)) {
- $pin_version = get_installed_machine_version($kvmversion);
- # pin to the current pveX version to make use of most current features if > 0
- my $pvever = get_pve_version($pin_version);
- if ($pvever > 0) {
- $pin_version .= "+pve$pvever";
- }
+ $pin_version = latest_installed_machine_version($kvmversion);
}
if (!$machine || $machine eq 'pc') {
$machine = "pc-i440fx-$pin_version";
--
2.47.3
More information about the pve-devel
mailing list