• Nathan Fontenot's avatar
    powerpc/numa: Invalidate numa_cpu_lookup_table on cpu remove · 1d9a0907
    Nathan Fontenot authored
    When DLPAR removing a CPU, the unmapping of the cpu from a node in
    unmap_cpu_from_node() should also invalidate the CPUs entry in the
    numa_cpu_lookup_table. There is not a guarantee that on a subsequent
    DLPAR add of the CPU the associativity will be the same and thus
    could be in a different node. Invalidating the entry in the
    numa_cpu_lookup_table causes the associativity to be read from the
    device tree at the time of the add.
    
    The current behavior of not invalidating the CPUs entry in the
    numa_cpu_lookup_table can result in scenarios where the the topology
    layout of CPUs in the partition does not match the device tree
    or the topology reported by the HMC.
    
    This bug looks like it was introduced in 2004 in the commit titled
    "ppc64: cpu hotplug notifier for numa", which is 6b15e4e87e32 in the
    linux-fullhist tree. Hence tag it for all stable releases.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarNathan Fontenot <nfont@linux.vnet.ibm.com>
    Reviewed-by: default avatarTyrel Datwyler <tyreld@linux.vnet.ibm.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    1d9a0907
numa.c 37.6 KB