diff mbox series

[2/3] hw/i386/pc_piix: Remove pc-i440fx-2.4 up to pc-i440fx-2.12

Message ID 20250117102738.59714-3-thuth@redhat.com (mailing list archive)
State New
Headers show
Series Remove deprecated machines pc-i440fx-2.4 up to pc-i440fx-2.12 | expand

Commit Message

Thomas Huth Jan. 17, 2025, 10:27 a.m. UTC
These machines have explicitly been marked as deprecated in
QEMU 9.1, so it should be fine to remove these antique versioned
machine types two releases later in 10.0.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 docs/about/deprecated.rst       |  7 ---
 docs/about/removed-features.rst |  4 +-
 docs/interop/firmware.json      |  2 +-
 hw/i386/pc_piix.c               | 95 ---------------------------------
 qemu-options.hx                 | 10 ++--
 5 files changed, 8 insertions(+), 110 deletions(-)

Comments

Kashyap Chamarthy Jan. 17, 2025, 11:58 a.m. UTC | #1
On Fri, Jan 17, 2025 at 11:27:37AM +0100, Thomas Huth wrote:
> These machines have explicitly been marked as deprecated in
> QEMU 9.1, so it should be fine to remove these antique versioned
> machine types two releases later in 10.0.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  docs/about/deprecated.rst       |  7 ---
>  docs/about/removed-features.rst |  4 +-
>  docs/interop/firmware.json      |  2 +-
>  hw/i386/pc_piix.c               | 95 ---------------------------------
>  qemu-options.hx                 | 10 ++--
>  5 files changed, 8 insertions(+), 110 deletions(-)

Looks good to me.  Nice that it has the side-effect of speeding up a
bit of the upstream CI, as it drops unncessary tests.  I also saw your
note in the cover letter that the corresponding Q35 machine types will
be removed in QEMU 10.1.  Thanks!

FWIW:

    Reviewed-by: Kashyap Chamarthy <kchamart@redhat.com>

> diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
> index 4a3c302962..7b42d6eecc 100644

[...]

>  PPC 405 ``ref405ep`` machine (since 9.1)
>  ''''''''''''''''''''''''''''''''''''''''
>  
> diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.rst
> index c6616ce05e..936846ed7b 100644
> --- a/docs/about/removed-features.rst
> +++ b/docs/about/removed-features.rst
> @@ -1006,8 +1006,8 @@ mips ``fulong2e`` machine alias (removed in 6.0)
>  
>  This machine has been renamed ``fuloong2e``.
>  
> -``pc-0.10`` up to ``pc-i440fx-2.3`` (removed in 4.0 up to 9.0)
> -''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
> +``pc-0.10`` up to ``pc-i440fx-2.12`` (removed in 4.0 up to 10.0)
> +''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
>  
>  These machine types were very old and likely could not be used for live
>  migration from old QEMU versions anymore. Use a newer machine type instead.
> diff --git a/docs/interop/firmware.json b/docs/interop/firmware.json
> index 57f55f6c54..f1e74318ff 100644
> --- a/docs/interop/firmware.json
> +++ b/docs/interop/firmware.json
> @@ -97,7 +97,7 @@
>  #            machine types, not aliases. Glob patterns are understood,
>  #            which is especially useful for versioned machine types.
>  #            (For example, the glob pattern "pc-i440fx-*" matches
> -#            "pc-i440fx-2.12".) On the QEMU command line, "-machine
> +#            "pc-i440fx-9.1".) On the QEMU command line, "-machine
>  #            type=..." specifies the requested machine type (but that
>  #            option does not accept glob patterns).
>  #
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index 04d2957adc..b821c32b38 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -698,101 +698,6 @@ static void pc_i440fx_machine_3_0_options(MachineClass *m)
>  
>  DEFINE_I440FX_MACHINE(3, 0);
>  
> -static void pc_i440fx_machine_2_12_options(MachineClass *m)
> -{
> -    pc_i440fx_machine_3_0_options(m);
> -    compat_props_add(m->compat_props, hw_compat_2_12, hw_compat_2_12_len);
> -    compat_props_add(m->compat_props, pc_compat_2_12, pc_compat_2_12_len);
> -}

[...]
Philippe Mathieu-Daudé Jan. 17, 2025, 4:52 p.m. UTC | #2
On 17/1/25 11:27, Thomas Huth wrote:
> These machines have explicitly been marked as deprecated in
> QEMU 9.1, so it should be fine to remove these antique versioned
> machine types two releases later in 10.0.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>   docs/about/deprecated.rst       |  7 ---
>   docs/about/removed-features.rst |  4 +-
>   docs/interop/firmware.json      |  2 +-
>   hw/i386/pc_piix.c               | 95 ---------------------------------
>   qemu-options.hx                 | 10 ++--
>   5 files changed, 8 insertions(+), 110 deletions(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
diff mbox series

Patch

diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index 4a3c302962..7b42d6eecc 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -236,13 +236,6 @@  deprecated; use the new name ``dtb-randomness`` instead. The new name
 better reflects the way this property affects all random data within
 the device tree blob, not just the ``kaslr-seed`` node.
 
-``pc-i440fx-2.4`` up to ``pc-i440fx-2.12`` (since 9.1)
-''''''''''''''''''''''''''''''''''''''''''''''''''''''
-
-These old machine types are quite neglected nowadays and thus might have
-various pitfalls with regards to live migration. Use a newer machine type
-instead.
-
 PPC 405 ``ref405ep`` machine (since 9.1)
 ''''''''''''''''''''''''''''''''''''''''
 
diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.rst
index c6616ce05e..936846ed7b 100644
--- a/docs/about/removed-features.rst
+++ b/docs/about/removed-features.rst
@@ -1006,8 +1006,8 @@  mips ``fulong2e`` machine alias (removed in 6.0)
 
 This machine has been renamed ``fuloong2e``.
 
-``pc-0.10`` up to ``pc-i440fx-2.3`` (removed in 4.0 up to 9.0)
-''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
+``pc-0.10`` up to ``pc-i440fx-2.12`` (removed in 4.0 up to 10.0)
+''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 
 These machine types were very old and likely could not be used for live
 migration from old QEMU versions anymore. Use a newer machine type instead.
diff --git a/docs/interop/firmware.json b/docs/interop/firmware.json
index 57f55f6c54..f1e74318ff 100644
--- a/docs/interop/firmware.json
+++ b/docs/interop/firmware.json
@@ -97,7 +97,7 @@ 
 #            machine types, not aliases. Glob patterns are understood,
 #            which is especially useful for versioned machine types.
 #            (For example, the glob pattern "pc-i440fx-*" matches
-#            "pc-i440fx-2.12".) On the QEMU command line, "-machine
+#            "pc-i440fx-9.1".) On the QEMU command line, "-machine
 #            type=..." specifies the requested machine type (but that
 #            option does not accept glob patterns).
 #
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 04d2957adc..b821c32b38 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -698,101 +698,6 @@  static void pc_i440fx_machine_3_0_options(MachineClass *m)
 
 DEFINE_I440FX_MACHINE(3, 0);
 
-static void pc_i440fx_machine_2_12_options(MachineClass *m)
-{
-    pc_i440fx_machine_3_0_options(m);
-    compat_props_add(m->compat_props, hw_compat_2_12, hw_compat_2_12_len);
-    compat_props_add(m->compat_props, pc_compat_2_12, pc_compat_2_12_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 12);
-
-static void pc_i440fx_machine_2_11_options(MachineClass *m)
-{
-    pc_i440fx_machine_2_12_options(m);
-    compat_props_add(m->compat_props, hw_compat_2_11, hw_compat_2_11_len);
-    compat_props_add(m->compat_props, pc_compat_2_11, pc_compat_2_11_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 11);
-
-static void pc_i440fx_machine_2_10_options(MachineClass *m)
-{
-    pc_i440fx_machine_2_11_options(m);
-    compat_props_add(m->compat_props, hw_compat_2_10, hw_compat_2_10_len);
-    compat_props_add(m->compat_props, pc_compat_2_10, pc_compat_2_10_len);
-    m->auto_enable_numa_with_memhp = false;
-}
-
-DEFINE_I440FX_MACHINE(2, 10);
-
-static void pc_i440fx_machine_2_9_options(MachineClass *m)
-{
-    pc_i440fx_machine_2_10_options(m);
-    compat_props_add(m->compat_props, hw_compat_2_9, hw_compat_2_9_len);
-    compat_props_add(m->compat_props, pc_compat_2_9, pc_compat_2_9_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 9);
-
-static void pc_i440fx_machine_2_8_options(MachineClass *m)
-{
-    pc_i440fx_machine_2_9_options(m);
-    compat_props_add(m->compat_props, hw_compat_2_8, hw_compat_2_8_len);
-    compat_props_add(m->compat_props, pc_compat_2_8, pc_compat_2_8_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 8);
-
-static void pc_i440fx_machine_2_7_options(MachineClass *m)
-{
-    pc_i440fx_machine_2_8_options(m);
-    compat_props_add(m->compat_props, hw_compat_2_7, hw_compat_2_7_len);
-    compat_props_add(m->compat_props, pc_compat_2_7, pc_compat_2_7_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 7);
-
-static void pc_i440fx_machine_2_6_options(MachineClass *m)
-{
-    X86MachineClass *x86mc = X86_MACHINE_CLASS(m);
-    PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
-
-    pc_i440fx_machine_2_7_options(m);
-    pcmc->legacy_cpu_hotplug = true;
-    x86mc->fwcfg_dma_enabled = false;
-    compat_props_add(m->compat_props, hw_compat_2_6, hw_compat_2_6_len);
-    compat_props_add(m->compat_props, pc_compat_2_6, pc_compat_2_6_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 6);
-
-static void pc_i440fx_machine_2_5_options(MachineClass *m)
-{
-    X86MachineClass *x86mc = X86_MACHINE_CLASS(m);
-
-    pc_i440fx_machine_2_6_options(m);
-    x86mc->save_tsc_khz = false;
-    m->legacy_fw_cfg_order = 1;
-    compat_props_add(m->compat_props, hw_compat_2_5, hw_compat_2_5_len);
-    compat_props_add(m->compat_props, pc_compat_2_5, pc_compat_2_5_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 5);
-
-static void pc_i440fx_machine_2_4_options(MachineClass *m)
-{
-    PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
-
-    pc_i440fx_machine_2_5_options(m);
-    m->hw_version = "2.4.0";
-    pcmc->broken_reserved_end = true;
-    compat_props_add(m->compat_props, hw_compat_2_4, hw_compat_2_4_len);
-    compat_props_add(m->compat_props, pc_compat_2_4, pc_compat_2_4_len);
-}
-
-DEFINE_I440FX_MACHINE(2, 4);
-
 #ifdef CONFIG_ISAPC
 static void isapc_machine_options(MachineClass *m)
 {
diff --git a/qemu-options.hx b/qemu-options.hx
index 7090d59f6f..a7cc4894f6 100644
--- a/qemu-options.hx
+++ b/qemu-options.hx
@@ -48,12 +48,12 @@  SRST
 
     For architectures which aim to support live migration compatibility
     across releases, each release will introduce a new versioned machine
-    type. For example, the 2.8.0 release introduced machine types
-    "pc-i440fx-2.8" and "pc-q35-2.8" for the x86\_64/i686 architectures.
+    type. For example, the 9.1.0 release introduced machine types
+    "pc-i440fx-9.1" and "pc-q35-9.1" for the x86\_64/i686 architectures.
 
-    To allow live migration of guests from QEMU version 2.8.0, to QEMU
-    version 2.9.0, the 2.9.0 version must support the "pc-i440fx-2.8"
-    and "pc-q35-2.8" machines too. To allow users live migrating VMs to
+    To allow live migration of guests from QEMU version 9.1.0 to QEMU
+    version 9.2.0, the 9.2.0 version must support the "pc-i440fx-9.1"
+    and "pc-q35-9.1" machines too. To allow users live migrating VMs to
     skip multiple intermediate releases when upgrading, new releases of
     QEMU will support machine types from many previous versions.