On Mon, Dec 17, 2018 at 05:35:22PM -0200, Eduardo Habkost wrote:
On Mon, Dec 17, 2018 at 05:57:37PM +0100, Thomas Huth wrote:
> They've been deprecated for two releases and nobody complained that they
> are still required anymore, so it's time to remove these now.
> And while we're at it, mark the other remaining old 0.x machine types
> as deprecated (since they can not properly be used for live-migration
> anyway).
Do you know why exactly they can't be used for live-migration?
Maybe we should split the removal of pc <= 0.10 and deprecation
of pc <= 0.15 into separate patches?
In either case:
Reviewed-by: Eduardo Habkost <ehabkost(a)redhat.com>
Michael, should I queue this, or should it go through your tree?
I'll queue it.
>
> Signed-off-by: Thomas Huth <thuth(a)redhat.com>
> ---
> hw/i386/pc_piix.c | 70 ++-------------------------------------------------
> qemu-deprecated.texi | 2 +-
> tests/cpu-plug-test.c | 4 +--
> 3 files changed, 4 insertions(+), 72 deletions(-)
>
> diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c
> index 6981cfa..7653fbb 100644
> --- a/hw/i386/pc_piix.c
> +++ b/hw/i386/pc_piix.c
> @@ -368,7 +368,7 @@ static void pc_compat_1_2(MachineState *machine)
> x86_cpu_change_kvm_default("kvm-pv-eoi", NULL);
> }
>
> -/* PC compat function for pc-0.10 to pc-0.13 */
> +/* PC compat function for pc-0.12 and pc-0.13 */
> static void pc_compat_0_13(MachineState *machine)
> {
> pc_compat_1_2(machine);
> @@ -834,6 +834,7 @@ static void pc_i440fx_0_15_machine_options(MachineClass *m)
> {
> pc_i440fx_1_0_machine_options(m);
> m->hw_version = "0.15";
> + m->deprecation_reason = "use a newer machine type instead";
> SET_MACHINE_COMPAT(m, PC_COMPAT_0_15);
> }
>
> @@ -951,73 +952,6 @@ static void pc_i440fx_0_12_machine_options(MachineClass *m)
> DEFINE_I440FX_MACHINE(v0_12, "pc-0.12", pc_compat_0_13,
> pc_i440fx_0_12_machine_options);
>
> -
> -#define PC_COMPAT_0_11 \
> - PC_CPU_MODEL_IDS("0.11") \
> - {\
> - .driver = "virtio-blk-pci",\
> - .property = "vectors",\
> - .value = stringify(0),\
> - },{\
> - .driver = TYPE_PCI_DEVICE,\
> - .property = "rombar",\
> - .value = stringify(0),\
> - },{\
> - .driver = "ide-drive",\
> - .property = "ver",\
> - .value = "0.11",\
> - },{\
> - .driver = "scsi-disk",\
> - .property = "ver",\
> - .value = "0.11",\
> - },
> -
> -static void pc_i440fx_0_11_machine_options(MachineClass *m)
> -{
> - pc_i440fx_0_12_machine_options(m);
> - m->hw_version = "0.11";
> - m->deprecation_reason = "use a newer machine type instead";
> - SET_MACHINE_COMPAT(m, PC_COMPAT_0_11);
> -}
> -
> -DEFINE_I440FX_MACHINE(v0_11, "pc-0.11", pc_compat_0_13,
> - pc_i440fx_0_11_machine_options);
> -
> -
> -#define PC_COMPAT_0_10 \
> - PC_CPU_MODEL_IDS("0.10") \
> - {\
> - .driver = "virtio-blk-pci",\
> - .property = "class",\
> - .value = stringify(PCI_CLASS_STORAGE_OTHER),\
> - },{\
> - .driver = "virtio-serial-pci",\
> - .property = "class",\
> - .value = stringify(PCI_CLASS_DISPLAY_OTHER),\
> - },{\
> - .driver = "virtio-net-pci",\
> - .property = "vectors",\
> - .value = stringify(0),\
> - },{\
> - .driver = "ide-drive",\
> - .property = "ver",\
> - .value = "0.10",\
> - },{\
> - .driver = "scsi-disk",\
> - .property = "ver",\
> - .value = "0.10",\
> - },
> -
> -static void pc_i440fx_0_10_machine_options(MachineClass *m)
> -{
> - pc_i440fx_0_11_machine_options(m);
> - m->hw_version = "0.10";
> - SET_MACHINE_COMPAT(m, PC_COMPAT_0_10);
> -}
> -
> -DEFINE_I440FX_MACHINE(v0_10, "pc-0.10", pc_compat_0_13,
> - pc_i440fx_0_10_machine_options);
> -
> typedef struct {
> uint16_t gpu_device_id;
> uint16_t pch_device_id;
> diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi
> index 2912084..190250f 100644
> --- a/qemu-deprecated.texi
> +++ b/qemu-deprecated.texi
> @@ -124,7 +124,7 @@ their usecases.
>
> @section System emulator machines
>
> -@subsection pc-0.10 and pc-0.11 (since 3.0)
> +@subsection pc-0.12, pc-0.13, pc-0.14 and pc-0.15 (since 4.0)
>
> These machine types are very old and likely can not be used for live migration
> from old QEMU versions anymore. A newer machine type should be used instead.
> diff --git a/tests/cpu-plug-test.c b/tests/cpu-plug-test.c
> index f4a677d..668f001 100644
> --- a/tests/cpu-plug-test.c
> +++ b/tests/cpu-plug-test.c
> @@ -157,9 +157,7 @@ static void add_pc_test_case(const char *mname)
> (strcmp(mname, "pc-0.15") == 0) ||
> (strcmp(mname, "pc-0.14") == 0) ||
> (strcmp(mname, "pc-0.13") == 0) ||
> - (strcmp(mname, "pc-0.12") == 0) ||
> - (strcmp(mname, "pc-0.11") == 0) ||
> - (strcmp(mname, "pc-0.10") == 0)) {
> + (strcmp(mname, "pc-0.12") == 0)) {
> path =
g_strdup_printf("cpu-plug/%s/init/%ux%ux%u&maxcpus=%u",
> mname, data->sockets, data->cores,
> data->threads, data->maxcpus);
> --
> 1.8.3.1
>
--
Eduardo