This patchset includes some updates to sPAPR memory hotplug code that currently resides in spapr-next branch of David Gibson's tree.
The main change here is to use drc-count hotplug identifier type for memory hotplug. Currently we use drc-index type of hotplug identifier for memory, which means that we send one EPOW event to guest on hotplug of each LMB. Guest kernel has limited buffer space to hold these events and we can easily overflow this buffer leading to missing of memory hotplug events. After we switch to drc-count type of hotplug identifier, we will send only one event to guest on hotplugging each pc-dimm device thereby reducing the chances of guest rtas buffer overflow. This change allows us to hotplug huge amounts of memory (>16G) in one pc-dimm hotplug request. Another change here is to not include information about memory specified using -m option in ibm,drc-names, ibm,drc-indexes and ibm,dynamic-memory-reconfiguration nodes thus having only truly DR capable memory in these DT nodes/properties. Bharata B Rao (5): spapr: Provide better error message when slots exceed max allowed spapr: Populate ibm,associativity-lookup-arrays correctly for non-NUMA spapr: Revert to memory@XXXX representation for non-hotplugged memory spapr: Support hotplug by specifying DRC count spapr: Move memory hotplug to RTAS_LOG_V6_HP_ID_DRC_COUNT type hw/ppc/spapr.c | 58 +++++++++++++------------------------------------- hw/ppc/spapr_events.c | 47 ++++++++++++++++++++++++++++++++-------- hw/ppc/spapr_pci.c | 4 ++-- include/hw/ppc/spapr.h | 8 +++++-- 4 files changed, 61 insertions(+), 56 deletions(-) -- 2.1.0