[PATCH 00/14] numa aware allocation for pacas, stacks, pagetables
Nicholas Piggin
npiggin at gmail.com
Wed Feb 14 02:08:10 AEDT 2018
This series allows numa aware allocations for various early data
structures for radix. Hash still has a bolted SLB limitation that
prevents at least pacas and stacks from node-affine allocations.
Fixed up a number of bugs, got pSeries working, added a couple more
cases where page tables can be allocated node-local.
Thanks,
Nick
Nicholas Piggin (14):
powerpc/64s: do not allocate lppaca if we are not virtualized
powerpc/64: Use array of paca pointers and allocate pacas individually
powerpc/64s: allocate lppacas individually
powerpc/64s: allocate slb_shadow structures individually
mm: make memblock_alloc_base_nid non-static
powerpc/mm/numa: move numa topology discovery earlier
powerpc/64: move default SPR recording
powerpc/setup: cpu_to_phys_id array
powerpc/64: defer paca allocation until memory topology is discovered
powerpc/64: allocate pacas per node
powerpc/64: allocate per-cpu stacks node-local if possible
powerpc: pass node id into create_section_mapping
powerpc/64s/radix: split early page table mapping to its own function
powerpc/64s/radix: allocate kernel page tables node-local if possible
arch/powerpc/include/asm/book3s/64/hash.h | 2 +-
arch/powerpc/include/asm/book3s/64/radix.h | 2 +-
arch/powerpc/include/asm/kvm_ppc.h | 8 +-
arch/powerpc/include/asm/lppaca.h | 26 +--
arch/powerpc/include/asm/paca.h | 16 +-
arch/powerpc/include/asm/pmc.h | 13 +-
arch/powerpc/include/asm/setup.h | 1 +
arch/powerpc/include/asm/smp.h | 5 +-
arch/powerpc/include/asm/sparsemem.h | 2 +-
arch/powerpc/kernel/asm-offsets.c | 5 +
arch/powerpc/kernel/crash.c | 2 +-
arch/powerpc/kernel/head_64.S | 19 ++-
arch/powerpc/kernel/machine_kexec_64.c | 37 +++--
arch/powerpc/kernel/paca.c | 238 ++++++++++++++-------------
arch/powerpc/kernel/prom.c | 12 +-
arch/powerpc/kernel/setup-common.c | 30 +++-
arch/powerpc/kernel/setup.h | 9 +-
arch/powerpc/kernel/setup_64.c | 80 ++++++---
arch/powerpc/kernel/smp.c | 10 +-
arch/powerpc/kernel/sysfs.c | 18 +-
arch/powerpc/kvm/book3s_hv.c | 34 ++--
arch/powerpc/kvm/book3s_hv_builtin.c | 2 +-
arch/powerpc/kvm/book3s_hv_interrupts.S | 3 +-
arch/powerpc/kvm/book3s_hv_rmhandlers.S | 3 +-
arch/powerpc/mm/hash_utils_64.c | 2 +-
arch/powerpc/mm/mem.c | 9 +-
arch/powerpc/mm/numa.c | 36 ++--
arch/powerpc/mm/pgtable-book3s64.c | 6 +-
arch/powerpc/mm/pgtable-radix.c | 203 ++++++++++++++++-------
arch/powerpc/mm/tlb-radix.c | 2 +-
arch/powerpc/platforms/85xx/smp.c | 8 +-
arch/powerpc/platforms/cell/smp.c | 4 +-
arch/powerpc/platforms/powernv/idle.c | 13 +-
arch/powerpc/platforms/powernv/setup.c | 4 +-
arch/powerpc/platforms/powernv/smp.c | 2 +-
arch/powerpc/platforms/powernv/subcore.c | 2 +-
arch/powerpc/platforms/pseries/hotplug-cpu.c | 2 +-
arch/powerpc/platforms/pseries/kexec.c | 7 +-
arch/powerpc/platforms/pseries/lpar.c | 4 +-
arch/powerpc/platforms/pseries/setup.c | 2 +-
arch/powerpc/platforms/pseries/smp.c | 4 +-
arch/powerpc/sysdev/xics/icp-native.c | 2 +-
arch/powerpc/xmon/xmon.c | 2 +-
include/linux/memblock.h | 5 +-
mm/memblock.c | 2 +-
45 files changed, 543 insertions(+), 355 deletions(-)
--
2.16.1
More information about the Linuxppc-dev
mailing list