On Mon, 29 Jun 2015 13:50:21 +0530 Bharata B Rao <bhar...@linux.vnet.ibm.com> wrote:
> Hi, > > Here is the v4 of the patchset that refactors pc_dimm_plug and adds > an API to lookup NUMA node by address. > > - Refactoring pc_dimm_plug() helps other architectures like PowerPC > to make use of common code. > - API to lookup NUMA node id by address is required to support memory > hotplug on PowerPC sPAPR guests. > > In addition to pc_dimm_plug() reorganization and NUMA node lookup > API, this patchset also carries a patch to abort when > HotplugHandlerClass::plug() fails for pc machine. > > The patchset that adds memory hotplug support to PowerPC sPAPR which > was posted at > http://lists.nongnu.org/archive/html/qemu-devel/2015-06/msg06574.html > depends on this patchset. > > Changes in v4: > ------------- > - Ensure memory range information is stored in node_info[0] for > non-NUMA configurations. (5/6) > - Ensure numa_get_node() API looks up the given address in node 0 > for non-NUMA configurations. (6/6) > > In addition the following changes based on Igor's review: > > - hhc->plug() shouldn't fail for PC arch, hence don't try to recover > by calling pc_dimm_memory_unplug(). (2/6) > - Use pc_dimm_memory_unplug() from pc_dimm_unplug(). (2/6) > - Add a patch to use error_abort in hhc->plug(). (3/6) > - Store exact address range (start, end and not end+1) in numa_info > and modify the lookup logic accordingly. (4/6, 6/6) > > v3: http://lists.nongnu.org/archive/html/qemu-devel/2015-06/msg06768.html > v2: https://lists.gnu.org/archive/html/qemu-devel/2015-06/msg05157.html > v1: https://lists.gnu.org/archive/html/qemu-devel/2015-06/msg03212.html > v0: https://lists.gnu.org/archive/html/qemu-devel/2015-05/msg01078.html > > Bharata B Rao (6): > pc,pc-dimm: Extract hotplug related fields in PCMachineState to a > structure > pc,pc-dimm: Factor out reusable parts in pc_dimm_plug to a separate > routine > pc: Abort if HotplugHandlerClass::plug() fails > numa,pc-dimm: Store pc-dimm memory information in numa_info > numa: Store boot memory address range in node_info > numa: API to lookup NUMA node by address > > hw/i386/acpi-build.c | 2 +- > hw/i386/pc.c | 84 +++++++------------------------------------ > hw/mem/pc-dimm.c | 84 +++++++++++++++++++++++++++++++++++++++++++ > include/hw/i386/pc.h | 7 ++-- > include/hw/mem/pc-dimm.h | 15 ++++++++ > include/sysemu/numa.h | 11 ++++++ > numa.c | 94 > ++++++++++++++++++++++++++++++++++++++++++++++++ > 7 files changed, 219 insertions(+), 78 deletions(-) > tested wrt PC memory hotplug, hence for series Tested-by: Igor Mammedov <imamm...@redhat.com>