Re: [PATCH v5 02/23] hw/i386/pc: Remove deprecated pc-i440fx-2.0 machine

2024-05-29 Thread Igor Mammedov
On Wed, 29 May 2024 07:15:18 +0200
Philippe Mathieu-Daudé  wrote:

> The pc-i440fx-2.0 machine was deprecated for the 8.2
> release (see commit c7437f0ddb "docs/about: Mark the
> old pc-i440fx-2.0 - 2.3 machine types as deprecated"),
> time to remove it.
> 
> Signed-off-by: Philippe Mathieu-Daudé 
> Reviewed-by: Thomas Huth 
> Reviewed-by: Zhao Liu 

Reviewed-by: Igor Mammedov 

> ---
>  docs/about/deprecated.rst   |  2 +-
>  docs/about/removed-features.rst |  2 +-
>  include/hw/i386/pc.h|  3 ---
>  hw/i386/pc.c| 15 -
>  hw/i386/pc_piix.c   | 37 -
>  5 files changed, 2 insertions(+), 57 deletions(-)
> 
> diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
> index 7ff52bdd8e..629f6a1566 100644
> --- a/docs/about/deprecated.rst
> +++ b/docs/about/deprecated.rst
> @@ -228,7 +228,7 @@ 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.0`` up to ``pc-i440fx-2.3`` (since 8.2) and ``pc-i440fx-2.4`` 
> up to ``pc-i440fx-2.12`` (since 9.1)
> +``pc-i440fx-2.1`` up to ``pc-i440fx-2.3`` (since 8.2) and ``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
> diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.rst
> index fba0cfb0b0..5f0c2d8ec2 100644
> --- a/docs/about/removed-features.rst
> +++ b/docs/about/removed-features.rst
> @@ -925,7 +925,7 @@ mips ``fulong2e`` machine alias (removed in 6.0)
>  
>  This machine has been renamed ``fuloong2e``.
>  
> -``pc-0.10`` up to ``pc-i440fx-1.7`` (removed in 4.0 up to 8.2)
> +``pc-0.10`` up to ``pc-i440fx-2.0`` (removed in 4.0 up to 9.0)
>  ''
>  
>  These machine types were very old and likely could not be used for live
> diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
> index ad9c3d9ba8..7347636d47 100644
> --- a/include/hw/i386/pc.h
> +++ b/include/hw/i386/pc.h
> @@ -290,9 +290,6 @@ extern const size_t pc_compat_2_2_len;
>  extern GlobalProperty pc_compat_2_1[];
>  extern const size_t pc_compat_2_1_len;
>  
> -extern GlobalProperty pc_compat_2_0[];
> -extern const size_t pc_compat_2_0_len;
> -
>  #define DEFINE_PC_MACHINE(suffix, namestr, initfn, optsfn) \
>  static void pc_machine_##suffix##_class_init(ObjectClass *oc, void 
> *data) \
>  { \
> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> index 7b638da7aa..11182e09ce 100644
> --- a/hw/i386/pc.c
> +++ b/hw/i386/pc.c
> @@ -319,21 +319,6 @@ GlobalProperty pc_compat_2_1[] = {
>  };
>  const size_t pc_compat_2_1_len = G_N_ELEMENTS(pc_compat_2_1);
>  
> -GlobalProperty pc_compat_2_0[] = {
> -PC_CPU_MODEL_IDS("2.0.0")
> -{ "virtio-scsi-pci", "any_layout", "off" },
> -{ "PIIX4_PM", "memory-hotplug-support", "off" },
> -{ "apic", "version", "0x11" },
> -{ "nec-usb-xhci", "superspeed-ports-first", "off" },
> -{ "nec-usb-xhci", "force-pcie-endcap", "on" },
> -{ "pci-serial", "prog_if", "0" },
> -{ "pci-serial-2x", "prog_if", "0" },
> -{ "pci-serial-4x", "prog_if", "0" },
> -{ "virtio-net-pci", "guest_announce", "off" },
> -{ "ICH9-LPC", "memory-hotplug-support", "off" },
> -};
> -const size_t pc_compat_2_0_len = G_N_ELEMENTS(pc_compat_2_0);
> -
>  GSIState *pc_gsi_create(qemu_irq **irqs, bool pci_enabled)
>  {
>  GSIState *s;
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index 02878060d0..a750a0e6ab 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -441,11 +441,6 @@ static void pc_compat_2_1_fn(MachineState *machine)
>  x86_cpu_change_kvm_default("svm", NULL);
>  }
>  
> -static void pc_compat_2_0_fn(MachineState *machine)
> -{
> -pc_compat_2_1_fn(machine);
> -}
> -
>  #ifdef CONFIG_ISAPC
>  static void pc_init_isa(MachineState *machine)
>  {
> @@ -887,38 +882,6 @@ static void pc_i440fx_2_1_machine_options(MachineClass 
> *m)
>  DEFINE_I440FX_MACHINE(v2_1, "pc-i440fx-2.1", pc_compat_2_1_fn,
>pc_i440fx_2_1_machine_options);
>  
> -static void pc_i440fx_2_0_machine_options(MachineClass *m)
> -{
> -PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
> -
> -pc_i440fx_2_1_machine_options(m);
> -m->hw_version = "2.0.0";
> -compat_props_add(m->compat_props, pc_compat_2_0, pc_compat_2_0_len);
> -pcmc->smbios_legacy_mode = true;
> -pcmc->has_reserved_memory = false;
> -/* This value depends on the actual DSDT and SSDT compiled into
> - * the source QEMU; unfortunately it depends on the binary and
> - * not on the machine type, so we cannot make pc-i440fx-1.7 work on
> - * both QEMU 1.7 and QEMU 2.0.
> - *
> - * Large variations 

[PATCH v5 02/23] hw/i386/pc: Remove deprecated pc-i440fx-2.0 machine

2024-05-28 Thread Philippe Mathieu-Daudé
The pc-i440fx-2.0 machine was deprecated for the 8.2
release (see commit c7437f0ddb "docs/about: Mark the
old pc-i440fx-2.0 - 2.3 machine types as deprecated"),
time to remove it.

Signed-off-by: Philippe Mathieu-Daudé 
Reviewed-by: Thomas Huth 
Reviewed-by: Zhao Liu 
---
 docs/about/deprecated.rst   |  2 +-
 docs/about/removed-features.rst |  2 +-
 include/hw/i386/pc.h|  3 ---
 hw/i386/pc.c| 15 -
 hw/i386/pc_piix.c   | 37 -
 5 files changed, 2 insertions(+), 57 deletions(-)

diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst
index 7ff52bdd8e..629f6a1566 100644
--- a/docs/about/deprecated.rst
+++ b/docs/about/deprecated.rst
@@ -228,7 +228,7 @@ 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.0`` up to ``pc-i440fx-2.3`` (since 8.2) and ``pc-i440fx-2.4`` up 
to ``pc-i440fx-2.12`` (since 9.1)
+``pc-i440fx-2.1`` up to ``pc-i440fx-2.3`` (since 8.2) and ``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
diff --git a/docs/about/removed-features.rst b/docs/about/removed-features.rst
index fba0cfb0b0..5f0c2d8ec2 100644
--- a/docs/about/removed-features.rst
+++ b/docs/about/removed-features.rst
@@ -925,7 +925,7 @@ mips ``fulong2e`` machine alias (removed in 6.0)
 
 This machine has been renamed ``fuloong2e``.
 
-``pc-0.10`` up to ``pc-i440fx-1.7`` (removed in 4.0 up to 8.2)
+``pc-0.10`` up to ``pc-i440fx-2.0`` (removed in 4.0 up to 9.0)
 ''
 
 These machine types were very old and likely could not be used for live
diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
index ad9c3d9ba8..7347636d47 100644
--- a/include/hw/i386/pc.h
+++ b/include/hw/i386/pc.h
@@ -290,9 +290,6 @@ extern const size_t pc_compat_2_2_len;
 extern GlobalProperty pc_compat_2_1[];
 extern const size_t pc_compat_2_1_len;
 
-extern GlobalProperty pc_compat_2_0[];
-extern const size_t pc_compat_2_0_len;
-
 #define DEFINE_PC_MACHINE(suffix, namestr, initfn, optsfn) \
 static void pc_machine_##suffix##_class_init(ObjectClass *oc, void *data) \
 { \
diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index 7b638da7aa..11182e09ce 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -319,21 +319,6 @@ GlobalProperty pc_compat_2_1[] = {
 };
 const size_t pc_compat_2_1_len = G_N_ELEMENTS(pc_compat_2_1);
 
-GlobalProperty pc_compat_2_0[] = {
-PC_CPU_MODEL_IDS("2.0.0")
-{ "virtio-scsi-pci", "any_layout", "off" },
-{ "PIIX4_PM", "memory-hotplug-support", "off" },
-{ "apic", "version", "0x11" },
-{ "nec-usb-xhci", "superspeed-ports-first", "off" },
-{ "nec-usb-xhci", "force-pcie-endcap", "on" },
-{ "pci-serial", "prog_if", "0" },
-{ "pci-serial-2x", "prog_if", "0" },
-{ "pci-serial-4x", "prog_if", "0" },
-{ "virtio-net-pci", "guest_announce", "off" },
-{ "ICH9-LPC", "memory-hotplug-support", "off" },
-};
-const size_t pc_compat_2_0_len = G_N_ELEMENTS(pc_compat_2_0);
-
 GSIState *pc_gsi_create(qemu_irq **irqs, bool pci_enabled)
 {
 GSIState *s;
diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
index 02878060d0..a750a0e6ab 100644
--- a/hw/i386/pc_piix.c
+++ b/hw/i386/pc_piix.c
@@ -441,11 +441,6 @@ static void pc_compat_2_1_fn(MachineState *machine)
 x86_cpu_change_kvm_default("svm", NULL);
 }
 
-static void pc_compat_2_0_fn(MachineState *machine)
-{
-pc_compat_2_1_fn(machine);
-}
-
 #ifdef CONFIG_ISAPC
 static void pc_init_isa(MachineState *machine)
 {
@@ -887,38 +882,6 @@ static void pc_i440fx_2_1_machine_options(MachineClass *m)
 DEFINE_I440FX_MACHINE(v2_1, "pc-i440fx-2.1", pc_compat_2_1_fn,
   pc_i440fx_2_1_machine_options);
 
-static void pc_i440fx_2_0_machine_options(MachineClass *m)
-{
-PCMachineClass *pcmc = PC_MACHINE_CLASS(m);
-
-pc_i440fx_2_1_machine_options(m);
-m->hw_version = "2.0.0";
-compat_props_add(m->compat_props, pc_compat_2_0, pc_compat_2_0_len);
-pcmc->smbios_legacy_mode = true;
-pcmc->has_reserved_memory = false;
-/* This value depends on the actual DSDT and SSDT compiled into
- * the source QEMU; unfortunately it depends on the binary and
- * not on the machine type, so we cannot make pc-i440fx-1.7 work on
- * both QEMU 1.7 and QEMU 2.0.
- *
- * Large variations cause migration to fail for more than one
- * consecutive value of the "-smp" maxcpus option.
- *
- * For small variations of the kind caused by different iasl versions,
- * the 4k rounding usually leaves slack.  However, there could be still
- * one or two values that break.  For QEMU 1.7 and QEMU 2.0 the
- * slack is