On Thu, Dec 05, 2013 at 06:53:50PM +0100, Paolo Bonzini wrote: > Il 14/11/2013 11:37, Michael S. Tsirkin ha scritto: > > Several changes that affect compatibility between 1.8 and 1.7 are > > already planned, so we need pc compat structures in place. > > > > Signed-off-by: Michael S. Tsirkin <m...@redhat.com> > > Is this patch in any tree? Also, you mentioned you would pick up > Marcelo's 1GB alignment patch. > > Thanks, > > Paolo
Both are in my PCI tree. > > > > Changes from v1: > > make 1.6 call 1.7 as suggested by Paolo > > > > hw/i386/pc_piix.c | 30 +++++++++++++++++++++++++----- > > hw/i386/pc_q35.c | 27 ++++++++++++++++++++++++--- > > 2 files changed, 49 insertions(+), 8 deletions(-) > > > > diff --git a/hw/i386/pc_piix.c b/hw/i386/pc_piix.c > > index 049f216..b6347e2 100644 > > --- a/hw/i386/pc_piix.c > > +++ b/hw/i386/pc_piix.c > > @@ -238,8 +238,13 @@ static void pc_init_pci(QEMUMachineInitArgs *args) > > pc_init1(args, 1, 1); > > } > > > > +static void pc_compat_1_7(QEMUMachineInitArgs *args) > > +{ > > +} > > + > > static void pc_compat_1_6(QEMUMachineInitArgs *args) > > { > > + pc_compat_1_6(args); > > has_pci_info = false; > > rom_file_in_ram = false; > > has_acpi_build = false; > > @@ -272,6 +277,12 @@ static void pc_compat_1_2(QEMUMachineInitArgs *args) > > disable_kvm_pv_eoi(); > > } > > > > +static void pc_init_pci_1_7(QEMUMachineInitArgs *args) > > +{ > > + pc_compat_1_7(args); > > + pc_init_pci(args); > > +} > > + > > static void pc_init_pci_1_6(QEMUMachineInitArgs *args) > > { > > pc_compat_1_6(args); > > @@ -344,16 +355,24 @@ static void pc_xen_hvm_init(QEMUMachineInitArgs *args) > > .desc = "Standard PC (i440FX + PIIX, 1996)", \ > > .hot_add_cpu = pc_hot_add_cpu > > > > -#define PC_I440FX_1_7_MACHINE_OPTIONS PC_I440FX_MACHINE_OPTIONS > > -static QEMUMachine pc_i440fx_machine_v1_7 = { > > - PC_I440FX_1_7_MACHINE_OPTIONS, > > - .name = "pc-i440fx-1.7", > > + > > +#define PC_I440FX_1_8_MACHINE_OPTIONS PC_I440FX_MACHINE_OPTIONS > > +static QEMUMachine pc_i440fx_machine_v1_8 = { > > + PC_I440FX_1_8_MACHINE_OPTIONS, > > + .name = "pc-i440fx-1.8", > > .alias = "pc", > > .init = pc_init_pci, > > .is_default = 1, > > }; > > > > -#define PC_I440FX_1_6_MACHINE_OPTIONS PC_I440FX_MACHINE_OPTIONS > > +#define PC_I440FX_1_7_MACHINE_OPTIONS PC_I440FX_1_8_MACHINE_OPTIONS > > +static QEMUMachine pc_i440fx_machine_v1_7 = { > > + PC_I440FX_1_7_MACHINE_OPTIONS, > > + .name = "pc-i440fx-1.7", > > + .init = pc_init_pci_1_7, > > +}; > > + > > +#define PC_I440FX_1_6_MACHINE_OPTIONS PC_I440FX_1_7_MACHINE_OPTIONS > > > > static QEMUMachine pc_i440fx_machine_v1_6 = { > > PC_I440FX_1_6_MACHINE_OPTIONS, > > @@ -752,6 +771,7 @@ static QEMUMachine xenfv_machine = { > > > > static void pc_machine_init(void) > > { > > + qemu_register_machine(&pc_i440fx_machine_v1_8); > > qemu_register_machine(&pc_i440fx_machine_v1_7); > > qemu_register_machine(&pc_i440fx_machine_v1_6); > > qemu_register_machine(&pc_i440fx_machine_v1_5); > > diff --git a/hw/i386/pc_q35.c b/hw/i386/pc_q35.c > > index d297000..9f3876f 100644 > > --- a/hw/i386/pc_q35.c > > +++ b/hw/i386/pc_q35.c > > @@ -222,8 +222,13 @@ static void pc_q35_init(QEMUMachineInitArgs *args) > > } > > } > > > > +static void pc_compat_1_7(QEMUMachineInitArgs *args) > > +{ > > +} > > + > > static void pc_compat_1_6(QEMUMachineInitArgs *args) > > { > > + pc_compat_1_7(args); > > has_pci_info = false; > > rom_file_in_ram = false; > > has_acpi_build = false; > > @@ -243,6 +248,12 @@ static void pc_compat_1_4(QEMUMachineInitArgs *args) > > x86_cpu_compat_set_features("Westmere", FEAT_1_ECX, 0, > > CPUID_EXT_PCLMULQDQ); > > } > > > > +static void pc_q35_init_1_7(QEMUMachineInitArgs *args) > > +{ > > + pc_compat_1_7(args); > > + pc_q35_init(args); > > +} > > + > > static void pc_q35_init_1_6(QEMUMachineInitArgs *args) > > { > > pc_compat_1_6(args); > > @@ -266,16 +277,25 @@ static void pc_q35_init_1_4(QEMUMachineInitArgs *args) > > .desc = "Standard PC (Q35 + ICH9, 2009)", \ > > .hot_add_cpu = pc_hot_add_cpu > > > > -#define PC_Q35_1_7_MACHINE_OPTIONS PC_Q35_MACHINE_OPTIONS > > +#define PC_Q35_1_8_MACHINE_OPTIONS PC_Q35_MACHINE_OPTIONS > > + > > +static QEMUMachine pc_q35_machine_v1_8 = { > > + PC_Q35_1_8_MACHINE_OPTIONS, > > + .name = "pc-q35-1.8", > > + .alias = "q35", > > + .init = pc_q35_init, > > +}; > > + > > +#define PC_Q35_1_7_MACHINE_OPTIONS PC_Q35_1_8_MACHINE_OPTIONS > > > > static QEMUMachine pc_q35_machine_v1_7 = { > > PC_Q35_1_7_MACHINE_OPTIONS, > > .name = "pc-q35-1.7", > > .alias = "q35", > > - .init = pc_q35_init, > > + .init = pc_q35_init_1_7, > > }; > > > > -#define PC_Q35_1_6_MACHINE_OPTIONS PC_Q35_MACHINE_OPTIONS > > +#define PC_Q35_1_6_MACHINE_OPTIONS PC_Q35_1_7_MACHINE_OPTIONS > > > > static QEMUMachine pc_q35_machine_v1_6 = { > > PC_Q35_1_6_MACHINE_OPTIONS, > > @@ -313,6 +333,7 @@ static QEMUMachine pc_q35_machine_v1_4 = { > > > > static void pc_q35_machine_init(void) > > { > > + qemu_register_machine(&pc_q35_machine_v1_8); > > qemu_register_machine(&pc_q35_machine_v1_7); > > qemu_register_machine(&pc_q35_machine_v1_6); > > qemu_register_machine(&pc_q35_machine_v1_5); > >