Current code does: - register pre_2_10_vmstate_dummy_icp with "icp/server" and instance dependinfg on cpu number - for newer machines, it register vmstate_icp with "icp/server" name and instance 0 - now it unregisters "icp/server" for the 1st instance.
This is wrong at many levels: - we shouldn't have two VMSTATEDescriptions with the same name - In case this is the only solution that we can came with, it needs to be: * register pre_2_10_vmstate_dummy_icp * unregister pre_2_10_vmstate_dummy_icp * register real vmstate_icp As the initialization of this machine is already complex enough, I need help from PPC maintainers to fix this. Volunteers? CC: Cedric Le Goater <[email protected]> CC: Daniel Henrique Barboza <[email protected]> CC: David Gibson <[email protected]> CC: Greg Kurz <[email protected]> Signed-off-by: Juan Quintela <[email protected]> --- hw/ppc/spapr.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c index cb840676d3..8531d13492 100644 --- a/hw/ppc/spapr.c +++ b/hw/ppc/spapr.c @@ -143,7 +143,12 @@ static bool pre_2_10_vmstate_dummy_icp_needed(void *opaque) } static const VMStateDescription pre_2_10_vmstate_dummy_icp = { - .name = "icp/server", + /* + * Hack ahead. We can't have two devices with the same name and + * instance id. So I rename this to pass make check. + * Real help from people who knows the hardware is needed. + */ + .name = "pre-2.10-icp/server", .version_id = 1, .minimum_version_id = 1, .needed = pre_2_10_vmstate_dummy_icp_needed, -- 2.41.0
