On 06/12/2014 05:42 PM, Paolo Bonzini wrote:
> Il 12/06/2014 02:08, Alexey Kardashevskiy ha scritto:
>>> > I would use the /machine object itself, not an extra object.  Otherwise
>>> > this looks good.
>>
>> "/machine" object is "machine" parameter from s390_init()? How do I add an
>> interface to it? Create a machine class as it is done by
>> spapr_machine_info? I am not that familiar with QOM and definitely miss
>> something.
> 
> No, you are not. :)  You need exactly to do what was done for sPAPR. Note
> that s390 has two machine classes.

2 machines... Heh. If only. Here is x86:

qemu_register_machine(&pc_i440fx_machine_v2_1);
qemu_register_machine(&pc_i440fx_machine_v2_0);
qemu_register_machine(&pc_i440fx_machine_v1_7);
qemu_register_machine(&pc_i440fx_machine_v1_6);
qemu_register_machine(&pc_i440fx_machine_v1_5);
qemu_register_machine(&pc_i440fx_machine_v1_4);
qemu_register_machine(&pc_machine_v1_3);
qemu_register_machine(&pc_machine_v1_2);
qemu_register_machine(&pc_machine_v1_1);
qemu_register_machine(&pc_machine_v1_0);
qemu_register_machine(&pc_machine_v0_15);
qemu_register_machine(&pc_machine_v0_14);
qemu_register_machine(&pc_machine_v0_13);
qemu_register_machine(&pc_machine_v0_12);
qemu_register_machine(&pc_machine_v0_11);
qemu_register_machine(&pc_machine_v0_10);
qemu_register_machine(&isapc_machine);
qemu_register_machine(&xenfv_machine);


qemu_register_machine(&pc_q35_machine_v2_1);
qemu_register_machine(&pc_q35_machine_v2_0);
qemu_register_machine(&pc_q35_machine_v1_7);
qemu_register_machine(&pc_q35_machine_v1_6);
qemu_register_machine(&pc_q35_machine_v1_5);
qemu_register_machine(&pc_q35_machine_v1_4);


These all are QEMUMachine's, not TYPE_MACHINE so I'll need to convert them too.

Converting SPAPR's QEMUMachine took several patches,
958db90cd54823c33345000c995453a8c9b7a005 "machine: Remove QEMUMachine
indirection from MachineClass" was quite big.

If you tell me to convert them all, ok, I'll do it :)


-- 
Alexey

Reply via email to