[PATCH V11 0/3] powerpc/dlpar: Correct display of hot-add/hot-remove CPUs and memory

From: Michael Bringmann
Date: Mon Aug 28 2017 - 20:33:17 EST



On Power systems with shared configurations of CPUs and memory, there
are some issues with association of additional CPUs and memory to nodes
when hot-adding resources. These patches address some of those problems.

powerpc/numa: Correct the currently broken capability to set the
topology for shared CPUs in LPARs. At boot time for shared CPU
lpars, the topology for each shared CPU is set to node zero, however,
this is now updated correctly using the Virtual Processor Home Node
(VPHN) capabilities information provided by the pHyp. The VPHN handling
in Linux is disabled, if PRRN handling is present.

Also, update initialization checks for device-tree attributes to
independently recognize PRRN or VPHN usage.

powerpc/nodes: On systems like PowerPC which allow 'hot-add' of CPU
or memory resources, it may occur that the new resources are to be
inserted into nodes that were not used for these resources at bootup.
In the kernel, any node that is used must be defined and initialized
at boot.

This patch extracts the value of the 'min_common_depth' element from
the "rtas" device tree property "ibm,max-associativity-domains" to use
as the maximum number of nodes to setup as possibly available in the
system. [The 'min_common_depth' element is calculated from memory
associations found while loading all of the configured memory into
the system data structures at boot.] This new setting will override
the instruction,

nodes_and(node_possible_map, node_possible_map, node_online_map);

presently seen in the function arch/powerpc/mm/numa.c:initmem_init().

If the property is not present at boot, no operation will be performed
to define or enable additional nodes.

powerpc/vphn: Rearrange file contents to better distinguish the VPHN
code from the NUMA code better, and move relevant functions to another
file.

Signed-off-by: Michael Bringmann <mwb@xxxxxxxxxxxxxxxxxx>

Michael Bringmann (3):
powerpc/numa: Update CPU topology when VPHN enabled
powerpc/nodes: Ensure enough nodes avail for operations
powerpc/vphn: Rearrange file contents for improved clarity
---
Changes in V11:
-- Reorganize patches to make individual changes clearer