On 30/04/2024 11.40, Philippe Mathieu-Daudé wrote:
Hi Thomas,
On 30/4/24 08:45, Thomas Huth wrote:
> Old machine types often have bugs or work-arounds that affect our
> possibilities to move forward with the QEMU code base (see for example
>
https://gitlab.com/qemu-project/qemu/-/issues/2213 for a bug that likely
> cannot be fixed without breaking live migration with old machine types,
> or
https://lists.gnu.org/archive/html/qemu-devel/2018-12/msg04516.html or
> commit ea985d235b86). So instead of going through the process of manually
> deprecating old machine types again and again, let's rather add an entry
> that can stay, which declares that machine types older than 6 years are
> considered as deprecated automatically. Six years should be sufficient to
> support the release cycles of most Linux distributions.
Thanks for taking that out of my plate :)
IIRC 6 years was because of some old RHEL version, otherwise could
5 years be enough? (maybe it could be good enough for this old RHEL
version as of QEMU v10.0).
My thinking was like this:
1) We recently talked about marking all machine types up to 2.12 as
deprecated recently. 2.12 has been released in 2018, so if we feel confident
that those old machine types could go away now/soon, 2024 - 2018 = 6 years
seem to be a good rule of thumb.
2) RHEL and OpenSuSE tend to provide feature updates in their enterprise
distros for 5 (RHEL) or 6 (current OpenSuSE AFAIK) years, so keeping old
machine types in upstream QEMU for that amount of time certainly also helps
with downstream distros.
> diff --git a/docs/about/deprecated.rst
b/docs/about/deprecated.rst
> index 6d595de3b6..fe69e2d44c 100644
> --- a/docs/about/deprecated.rst
> +++ b/docs/about/deprecated.rst
> @@ -220,6 +220,17 @@ is a chance the code will bitrot without anyone
> noticing.
> System emulator machines
> ------------------------
> +Versioned machine types older than 6 years
>
+''''''''''''''''''''''''''''''''''''''''''
> +
> +Starting with the release of QEMU 10.0, versioned machine types older than
Why can't we start with QEMU 9.1?
If I put 9.1 now there, that would make it possible to immediately remove
machines in 9.2, i.e. we would skip the
must-be-marked-as-deprecated-for-two-releases rule here.
Thomas