From: Thomas Lamprecht <t.lamprecht@proxmox.com>
To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>,
Fiona Ebner <f.ebner@proxmox.com>
Subject: [pve-devel] applied-series: [PATCH qemu-server/docs v4 00/16] adapt to changes in QEMU machine version deprecation/removal
Date: Fri, 17 Jan 2025 19:55:39 +0100 [thread overview]
Message-ID: <00b2e64d-61b3-4f73-8293-a3bf7dbced37@proxmox.com> (raw)
In-Reply-To: <20250117142430.99484-1-f.ebner@proxmox.com>
Am 17.01.25 um 15:24 schrieb Fiona Ebner:
> Changes in v4:
> * dropped already applied patch
> * move import for get_host_arch() to earlier patch where it is already needed
> * squash rename and move patches for get_command_for_arch() together
> * rename machine_version_at_least -> is_machine_version_at_least
> * use a dedicated section to describe the new removal policy
> * drop table, instead describe how the cut-off decision is made with examples
>
> Changes in v3:
> * improve code readibility for Windows machine version fallback change
>
> Changes in v2:
> * change deprecation logic into QEMU itself rather than just weakening
> the warning there (so no need to change the deprecation logic in
> qemu-server anymore)
> * get rid of outdated information from "Update to a Newer Machine
> Version" section in docs
>
> In QEMU commit a35f8577a0 ("include/hw: add macros for deprecation &
> removal of versioned machines"), a new machine version deprecation and
> removal policy was introduced. After only 3 years a machine version
> will be deprecated while being removed after 6 years.
>
> The deprecation is a bit early considering major PVE releases are
> approximately every 2 years. This means that a deprecation warning can
> already happen for a machine version that was introduced during the
> previous major release. This would scare users for no good reason, so
> avoid deprecating machine versions in PVE too early and define a
> baseline of machine versions that will be supported throughout a
> single major PVE release.
>
> The new policy takes effect only in QEMU 10.1, see QEMU commit
> c9fd2d9a48 ("include/hw: temporarily disable deletion of versioned
> machine types"). Machine versions <=2.3 were already deprecated for a
> while, with PVE also warning about it since commit dec371d9 ("vm
> start: add warning about deprecated machine version") in qemu-server
> 8.0.8. These have been dropped in QEMU 9.1, so the baseline for PVE 8
> is 2.4.
>
> This series is intended to allow broader QEMU 9.1 rollout. Still
> required in addition to this series before PVE 9:
> * wiki article about what to look out for when changing machine
> version
> * checks in pve8to9 script giving errors/warnings when machine version
> is too old
>
> qemu-server:
>
> Fiona Ebner (15):
> machine: drop unused parameter from assert_valid_machine_property()
> helper
> move get_command_for_arch() helper to helpers module
> move kvm_user_version() function to helpers module
> move get_vm_arch() helper to helpers module
> machine: add default_machine_for_arch() helper
> move get_installed_machine_version() helper to machine module
> move windows_get_pinned_machine_version() function to machine module
> move get_vm_machine() function to machine module
> move meta information handling to its own module
> machine: fallback to creation QEMU version for windows starting with
> 9.1
> machine: add check_and_pin_machine_string() helper
> api: update vm config: pin machine version when switching to windows
> os type
> machine: log informational line when pinning machine version for
> Windows guest
> machine: rename machine_version() function to
> is_machine_version_at_least()
> machine: code cleanup: avoid superfluous augmented assignment operator
>
> PVE/API2/Qemu.pm | 44 +++++---
> PVE/QemuServer.pm | 184 +++----------------------------
> PVE/QemuServer/Helpers.pm | 49 ++++++++
> PVE/QemuServer/Machine.pm | 108 +++++++++++++++++-
> PVE/QemuServer/Makefile | 1 +
> PVE/QemuServer/MetaInfo.pm | 47 ++++++++
> test/run_config2command_tests.pl | 3 +-
> 7 files changed, 249 insertions(+), 187 deletions(-)
> create mode 100644 PVE/QemuServer/MetaInfo.pm
>
>
> pve-docs:
>
> Fiona Ebner (1):
> qm: machine version: document support in PVE
>
> qm.adoc | 34 ++++++++++++++++++++++++++--------
> 1 file changed, 26 insertions(+), 8 deletions(-)
>
>
> Summary over all repositories:
> 8 files changed, 275 insertions(+), 195 deletions(-)
>
applied, thanks!
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
prev parent reply other threads:[~2025-01-17 18:56 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-17 14:24 [pve-devel] " Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 01/16] machine: drop unused parameter from assert_valid_machine_property() helper Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 02/16] move get_command_for_arch() helper to helpers module Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 03/16] move kvm_user_version() function " Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 04/16] move get_vm_arch() helper " Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 05/16] machine: add default_machine_for_arch() helper Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 06/16] move get_installed_machine_version() helper to machine module Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 07/16] move windows_get_pinned_machine_version() function " Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 08/16] move get_vm_machine() " Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 09/16] move meta information handling to its own module Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 10/16] machine: fallback to creation QEMU version for windows starting with 9.1 Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 11/16] machine: add check_and_pin_machine_string() helper Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 12/16] api: update vm config: pin machine version when switching to windows os type Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 13/16] machine: log informational line when pinning machine version for Windows guest Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 14/16] machine: rename machine_version() function to is_machine_version_at_least() Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH qemu-server v4 15/16] machine: code cleanup: avoid superfluous augmented assignment operator Fiona Ebner
2025-01-17 14:24 ` [pve-devel] [PATCH docs v4 16/16] qm: machine version: document support in PVE Fiona Ebner
2025-01-17 18:55 ` Thomas Lamprecht [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=00b2e64d-61b3-4f73-8293-a3bf7dbced37@proxmox.com \
--to=t.lamprecht@proxmox.com \
--cc=f.ebner@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal