* Marc-André Lureau (marcandre.lur...@gmail.com) wrote: > On Thu, Nov 15, 2018 at 7:47 PM Dr. David Alan Gilbert (git) > <dgilb...@redhat.com> wrote: > > > > From: "Dr. David Alan Gilbert" <dgilb...@redhat.com> > > > > x86 doesn't need a 3.1 machine type, because there's no incompatibility, > > but it looks odd not having one, especially since s390, ppc and ARM have > > it. Join the party. > > > > Signed-off-by: Dr. David Alan Gilbert <dgilb...@redhat.com> > > Suggested-by: Peter Maydell <peter.mayd...@linaro.org> > > I sent same patch already reviewed by Michael a few weeks ago: > https://lists.nongnu.org/archive/html/qemu-devel/2018-10/msg06574.html
OK, the problem is it's buried in the middle of a big series; can we just take either this version or your version for 3.1? > > --- > > hw/i386/pc_piix.c | 15 ++++++++++++--- > > hw/i386/pc_q35.c | 13 +++++++++++-- > > include/hw/i386/pc.h | 3 +++ > > 3 files changed, 26 insertions(+), 5 deletions(-) > > > > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c > > index dc09466b3e..7092d6d13f 100644 > > --- a/hw/i386/pc_piix.c > > +++ b/hw/i386/pc_piix.c > > @@ -428,21 +428,30 @@ static void pc_i440fx_machine_options(MachineClass *m) > > machine_class_allow_dynamic_sysbus_dev(m, TYPE_RAMFB_DEVICE); > > } > > > > -static void pc_i440fx_3_0_machine_options(MachineClass *m) > > +static void pc_i440fx_3_1_machine_options(MachineClass *m) > > { > > pc_i440fx_machine_options(m); > > m->alias = "pc"; > > m->is_default = 1; > > } > > > > +DEFINE_I440FX_MACHINE(v3_1, "pc-i440fx-3.1", NULL, > > + pc_i440fx_3_1_machine_options); > > + > > +static void pc_i440fx_3_0_machine_options(MachineClass *m) > > +{ > > + pc_i440fx_3_1_machine_options(m); > > + m->is_default = 0; > > + m->alias = NULL; > > + SET_MACHINE_COMPAT(m, PC_COMPAT_3_0); > > +} > > + > > DEFINE_I440FX_MACHINE(v3_0, "pc-i440fx-3.0", NULL, > > pc_i440fx_3_0_machine_options); > > > > static void pc_i440fx_2_12_machine_options(MachineClass *m) > > { > > pc_i440fx_3_0_machine_options(m); > > - m->is_default = 0; > > - m->alias = NULL; > > SET_MACHINE_COMPAT(m, PC_COMPAT_2_12); > > } > > > > diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c > > index 532241e3f8..6799b3e553 100644 > > --- a/hw/i386/pc_q35.c > > +++ b/hw/i386/pc_q35.c > > @@ -311,19 +311,28 @@ static void pc_q35_machine_options(MachineClass *m) > > m->max_cpus = 288; > > } > > > > -static void pc_q35_3_0_machine_options(MachineClass *m) > > +static void pc_q35_3_1_machine_options(MachineClass *m) > > { > > pc_q35_machine_options(m); > > m->alias = "q35"; > > } > > > > +DEFINE_Q35_MACHINE(v3_1, "pc-q35-3.1", NULL, > > + pc_q35_3_1_machine_options); > > + > > +static void pc_q35_3_0_machine_options(MachineClass *m) > > +{ > > + pc_q35_3_1_machine_options(m); > > + m->alias = NULL; > > + SET_MACHINE_COMPAT(m, PC_COMPAT_3_0); > > +} > > + > > DEFINE_Q35_MACHINE(v3_0, "pc-q35-3.0", NULL, > > pc_q35_3_0_machine_options); > > > > static void pc_q35_2_12_machine_options(MachineClass *m) > > { > > pc_q35_3_0_machine_options(m); > > - m->alias = NULL; > > SET_MACHINE_COMPAT(m, PC_COMPAT_2_12); > > } > > > > diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h > > index 136fe497b6..c37d4333a0 100644 > > --- a/include/hw/i386/pc.h > > +++ b/include/hw/i386/pc.h > > @@ -294,6 +294,9 @@ int e820_add_entry(uint64_t, uint64_t, uint32_t); > > int e820_get_num_entries(void); > > bool e820_get_entry(int, uint32_t, uint64_t *, uint64_t *); > > > > +#define PC_COMPAT_3_1 \ > > + HW_COMPAT_3_1 > > you shouldn't need that, right? Oops, true, that's for next time around. Dave > > + > > #define PC_COMPAT_3_0 \ > > HW_COMPAT_3_0 \ > > {\ > > -- > > 2.19.1 > > > > > > > -- > Marc-André Lureau -- Dr. David Alan Gilbert / dgilb...@redhat.com / Manchester, UK