qemu-irix/hw/ppc
Bharata B Rao 8d5981c4fc spapr: Fix QEMU abort during memory unplug
Commit 0cffce56 (hw/ppc/spapr.c: adding pending_dimm_unplugs to
sPAPRMachineState) introduced a new way to track pending LMBs of DIMM
device that is marked for removal. Since this commit we can hit the
assert in spapr_pending_dimm_unplugs_add() in the following situation:

- DIMM device removal fails as the guest doesn't allow the removal.
- Subsequent attempt to remove the same DIMM would hit the assert
  as the corresponding sPAPRDIMMState is still part of the
  pending_dimm_unplugs list.

Fix this by removing the assert and conditionally adding the
sPAPRDIMMState to pending_dimm_unplugs list only when it is not
already present.

Fixes: 0cffce56ae
Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
[dwg: Tweaked to avoid returning NULL when spapr_pending_dimm_unplugs_add()
 does find an existing entry]
Reviewed-by: Daniel Barboza <danielhb@linux.vnet.ibm.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
2017-07-25 11:14:25 +10:00
..
Makefile.objs
e500-ccsr.h
e500.c shutdown: Add source information to SHUTDOWN and RESET 2017-05-23 13:28:17 +02:00
e500.h
e500plat.c
fdt.c
mac.h
mac_newworld.c hw: Use new memory_region_init_{ram, rom, rom_device}() functions 2017-07-14 17:59:42 +01:00
mac_oldworld.c hw: Use new memory_region_init_{ram, rom, rom_device}() functions 2017-07-14 17:59:42 +01:00
mpc8544_guts.c shutdown: Add source information to SHUTDOWN and RESET 2017-05-23 13:28:17 +02:00
mpc8544ds.c
pnv.c Convert error_report() to warn_report() 2017-07-13 13:49:58 +02:00
pnv_bmc.c
pnv_core.c pnv-core: use get_uint() for "core-pir" property 2017-06-20 14:31:33 +02:00
pnv_lpc.c
pnv_occ.c
pnv_psi.c xics: introduce macros for ICP/ICS link properties 2017-06-09 12:12:34 +10:00
pnv_xscom.c
ppc.c shutdown: Add source information to SHUTDOWN and RESET 2017-05-23 13:28:17 +02:00
ppc4xx_devs.c
ppc4xx_pci.c
ppc405.h
ppc405_boards.c hw: Use new memory_region_init_{ram, rom, rom_device}() functions 2017-07-14 17:59:42 +01:00
ppc405_uc.c hw: Use new memory_region_init_{ram, rom, rom_device}() functions 2017-07-14 17:59:42 +01:00
ppc440_bamboo.c
ppc_booke.c
ppce500_spin.c
prep.c hw/ppc/prep: Remove superfluous call to soundhw_init() 2017-06-30 14:03:31 +10:00
prep_systemio.c
rs6000_mc.c
spapr.c spapr: Fix QEMU abort during memory unplug 2017-07-25 11:14:25 +10:00
spapr_cpu_core.c spapr: prevent QEMU crash when CPU realization fails 2017-06-30 14:03:31 +10:00
spapr_drc.c qapi: Use QNull for a more regular visit_type_null() 2017-07-24 13:35:11 +02:00
spapr_events.c spapr: Minor cleanups to events handling 2017-07-17 15:07:05 +10:00
spapr_hcall.c pseries: Allow HPT resizing with KVM 2017-07-17 15:07:05 +10:00
spapr_iommu.c * gdbstub fixes (Alex) 2017-07-14 12:16:09 +01:00
spapr_ovec.c
spapr_pci.c spapr_pci: Fix obsolete comment about MSIX encoding in addr/data 2017-07-25 11:14:25 +10:00
spapr_pci_vfio.c
spapr_rng.c spapr_rng: Convert to DEFINE_PROP_LINK 2017-07-14 12:04:43 +02:00
spapr_rtas.c pseries: Correct panic behaviour for pseries machine type 2017-06-08 14:38:18 +10:00
spapr_rtas_ddw.c
spapr_rtc.c
spapr_vio.c vmstate: error hint for failed equal checks 2017-06-28 11:18:44 +02:00
trace-events pseries: Stubs for HPT resizing 2017-07-17 15:07:05 +10:00
virtex_ml507.c