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 <c...@kaod.org> CC: Daniel Henrique Barboza <danielhb...@gmail.com> CC: David Gibson <da...@gibson.dropbear.id.au> CC: Greg Kurz <gr...@kaod.org> Signed-off-by: Juan Quintela <quint...@redhat.com> --- 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