]> git.proxmox.com Git - qemu-server.git/commit
implement PVE Version addition for QEMU machine
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Mon, 25 Nov 2019 10:18:13 +0000 (11:18 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Mon, 25 Nov 2019 15:43:38 +0000 (16:43 +0100)
commit9471e48bf9fbac4a8cd582c005903b29e214223d
tree7e633c2800db9674ffc6db16a1073aa3f490d5fe
parente2414e73ce75893a143dc32cf6a4e58159cc25ff
implement PVE Version addition for QEMU machine

With our QEMU 4.1.1 package we can pass a additional internal version
to QEMU's machine, it will be split out there and ignored, but
returned on a QMP 'query-machines' call.

This allows us to use it for increasing the granularity with which we
can roll-out HW layout changes/additions for VMs. Until now we
required a machine version bump, happening normally every major
release of QEMU, with seldom, for us irrelevant, exceptions.
This often delays rolling out a feature, which would break
live-migration, by several months. That can now be avoided, the new
"pve-version" component of the machine can be bumped at will, and
thus we are much more flexible.

That versions orders after the ($major, $minor) version components
from an stable release - it can thus also be reset on the next
release.

The implementation extends the qemu-machine REGEX, remembers
"pve-version" when doing a "query-machines" and integrates support
into the min_version and extract_version helpers.

We start out with a version of 1.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Stefan Reiter <s.reiter@proxmox.com>
PVE/QemuServer.pm
PVE/QemuServer/Helpers.pm
PVE/QemuServer/Machine.pm
test/cfg2cmd/i440fx-win10-hostpci.conf.cmd
test/cfg2cmd/minimal-defaults.conf.cmd
test/cfg2cmd/q35-linux-hostpci.conf.cmd
test/cfg2cmd/q35-win10-hostpci.conf.cmd
test/cfg2cmd/spice-linux-4.1.conf.cmd