qemu-e2k/hw/ppc
Juan Quintela 485fb95546 migration: Hack to maintain backwards compatibility for ppc
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

Created vmstate_replace_hack_for_ppc() with warnings left and right
that it is a hack.

CC: Cedric Le Goater <clg@kaod.org>
CC: Daniel Henrique Barboza <danielhb413@gmail.com>
CC: David Gibson <david@gibson.dropbear.id.au>
CC: Greg Kurz <groug@kaod.org>

Reviewed-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Juan Quintela <quintela@redhat.com>
Message-ID: <20231020090731.28701-8-quintela@redhat.com>
2023-11-01 16:13:58 +01:00
..
e500-ccsr.h
e500.c accel/tcg: Replace CPUState.env_ptr with cpu_env() 2023-10-04 11:03:54 -07:00
e500.h
e500plat.c hw/ppc: Use MachineClass->default_nic in the ppc machines 2023-05-22 09:44:22 +02:00
fdt.c
fw_cfg.c
Kconfig hw/ppc/Kconfig: MAC_NEWWORLD should always select USB_OHCI_PCI 2023-06-10 10:19:24 -03:00
mac_newworld.c hw/ppc: Use MachineClass->default_nic in the ppc machines 2023-05-22 09:44:22 +02:00
mac_oldworld.c hw/ppc: Reset timebase facilities on machine reset 2023-09-06 11:19:33 +02:00
meson.build spapr: Remove support for NVIDIA V100 GPU with NVLink2 2023-09-18 07:25:28 -03:00
mpc8544_guts.c
mpc8544ds.c hw/ppc: Use MachineClass->default_nic in the ppc machines 2023-05-22 09:44:22 +02:00
pef.c migration: simplify blockers 2023-10-20 08:51:41 +02:00
pegasos2.c vt82c686 machines: Support machine-default audiodev with fallback 2023-10-03 10:29:40 +02:00
pnv_bmc.c
pnv_core.c hw/ppc: Reset timebase facilities on machine reset 2023-09-06 11:19:33 +02:00
pnv_homer.c
pnv_lpc.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
pnv_occ.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
pnv_pnor.c
pnv_psi.c pnv/psi: Clean up local variable shadowing 2023-09-29 10:07:17 +02:00
pnv_sbe.c bulk: Remove pointless QOM casts 2023-06-05 20:48:34 +02:00
pnv_xscom.c hw/ppc/pnv_xscom: Do not use SysBus API to map local MMIO region 2023-10-19 23:13:28 +02:00
pnv.c hw/ppc/pnv: Do not use SysBus API to map local MMIO region 2023-10-19 23:13:28 +02:00
ppc4xx_devs.c
ppc4xx_pci.c ppc4xx_pci: Add define for ppc4xx-host-bridge type name 2023-07-07 04:47:49 -03:00
ppc4xx_sdram.c *: Add missing includes of qemu/error-report.h 2023-03-22 15:06:57 +00:00
ppc405_boards.c
ppc405_uc.c
ppc405.h
ppc440_bamboo.c ppc/{bamboo, virtex_ml507}: Remove useless dependency on ppc405.h header 2023-10-21 15:00:22 +03:00
ppc440_pcix.c ppc440_pcix: Rename QOM type define abd move it to common header 2023-07-07 04:47:49 -03:00
ppc440_uc.c hw/ppc/ppc440_uc: Remove dead l2sram_update_mappings() 2023-10-21 15:00:22 +03:00
ppc440.h ppc440: Remove ppc460ex_pcie_init legacy init function 2023-07-07 04:47:49 -03:00
ppc_booke.c
ppc.c ppc: spelling fixes 2023-09-20 07:54:34 +03:00
ppce500_spin.c target/ppc: Restrict KVM-specific fields from ArchCPU 2023-06-28 14:27:59 +02:00
prep_systemio.c ppc: spelling fixes 2023-09-20 07:54:34 +03:00
prep.c hw/ppc: Support machine-default audiodev with fallback 2023-10-03 10:29:40 +02:00
rs6000_mc.c
sam460ex.c ppc440_pcix: Rename QOM type define abd move it to common header 2023-07-07 04:47:49 -03:00
spapr_caps.c spapr: TCG allow up to 8-thread SMT on POWER8 and newer CPUs 2023-06-25 22:41:30 +02:00
spapr_cpu_core.c hw/ppc: Reset timebase facilities on machine reset 2023-09-06 11:19:33 +02:00
spapr_drc.c spapr/drc: Clean up local variable shadowing in prop_get_fdt() 2023-09-29 10:07:18 +02:00
spapr_events.c migration: simplify blockers 2023-10-20 08:51:41 +02:00
spapr_hcall.c ppc: spelling fixes 2023-09-20 07:54:34 +03:00
spapr_iommu.c hw/ppc: use g_free() in spapr_tce_table_post_load() 2023-09-08 13:08:52 +03:00
spapr_irq.c
spapr_nested.c ppc/spapr: Move spapr nested HV to a new file 2023-06-25 22:41:30 +02:00
spapr_numa.c spapr: Remove support for NVIDIA V100 GPU with NVLink2 2023-09-18 07:25:28 -03:00
spapr_nvdimm.c migration: Use vmstate_register_any() 2023-11-01 16:13:58 +01:00
spapr_ovec.c
spapr_pci_vfio.c ppc: spelling fixes 2023-09-20 07:54:34 +03:00
spapr_pci.c spapr/pci: Clean up local variable shadowing in spapr_phb_realize() 2023-09-29 10:07:18 +02:00
spapr_rng.c
spapr_rtas_ddw.c
spapr_rtas.c migration: simplify blockers 2023-10-20 08:51:41 +02:00
spapr_rtc.c
spapr_softmmu.c *: Add missing includes of qemu/error-report.h 2023-03-22 15:06:57 +00:00
spapr_tpm_proxy.c
spapr_vio.c hw/ppc/spapr_vio: Realize SPAPR_VIO_BRIDGE device before accessing it 2023-10-19 23:13:28 +02:00
spapr_vof.c
spapr.c migration: Hack to maintain backwards compatibility for ppc 2023-11-01 16:13:58 +01:00
trace-events
trace.h
virtex_ml507.c ppc/{bamboo, virtex_ml507}: Remove useless dependency on ppc405.h header 2023-10-21 15:00:22 +03:00
vof.c ppc/vof: Fix missed fields in VOF cleanup 2023-09-06 11:19:33 +02:00