Anton Blanchard found an issue with an LPAR that had no memory in Node 0. Christoph Lameter recommended, as one possible solution, to use numa_mem_id() for locality of the nearest memory node-wise. However, numa_mem_id() [and the other related APIs] are only useful if CONFIG_HAVE_MEMORYLESS_NODES is set. This is only the case for ia64 currently, but clearly we can have memoryless nodes on ppc64. Add the Kconfig option and define it to be the same value as CONFIG_NUMA. On the LPAR in question, which was very inefficiently using slabs, this took the slab consumption at boot from roughly 7GB to roughly 4GB. --- Ben, the only question I have wrt this change is if it's appropriate to change it for all powerpc configs (that have NUMA on)? diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig index 25493a0..bb2d5fe 100644 --- a/arch/powerpc/Kconfig +++ b/arch/powerpc/Kconfig @@ -447,6 +447,9 @@ config NODES_SHIFT default "4" depends on NEED_MULTIPLE_NODES +config HAVE_MEMORYLESS_NODES + def_bool NUMA + config ARCH_SELECT_MEMORY_MODEL def_bool y depends on PPC64 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>