From: Andy Whitcroft Date: Thu, 23 Jun 2005 07:08:01 +0000 (-0700) Subject: [PATCH] ppc64: add early_pfn_to_nid X-Git-Tag: v2.6.13-rc1~68^2~511 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=510f8fa7ba18320d408dd3093663e58f5664f2f0;p=linux-2.6 [PATCH] ppc64: add early_pfn_to_nid Provide an implementation of early_pfn_to_nid for PPC64. This is used by memory models to determine the node from which to take allocations before the memory allocators are fully initialised. Signed-off-by: Andy Whitcroft Signed-off-by: Dave Hansen Signed-off-by: Martin Bligh Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/arch/ppc64/Kconfig b/arch/ppc64/Kconfig index 85f8fcf44b..3c8bfd0345 100644 --- a/arch/ppc64/Kconfig +++ b/arch/ppc64/Kconfig @@ -211,6 +211,10 @@ config ARCH_FLATMEM_ENABLE source "mm/Kconfig" +config HAVE_ARCH_EARLY_PFN_TO_NID + bool + default y + # Some NUMA nodes have memory ranges that span # other nodes. Even though a pfn is valid and # between a node's start and end pfns, it may not diff --git a/include/asm-ppc64/mmzone.h b/include/asm-ppc64/mmzone.h index cbfc5ecfe8..ecc4b07507 100644 --- a/include/asm-ppc64/mmzone.h +++ b/include/asm-ppc64/mmzone.h @@ -90,4 +90,9 @@ static inline int pa_to_nid(unsigned long pa) #define discontigmem_pfn_valid(pfn) ((pfn) < num_physpages) #endif /* CONFIG_DISCONTIGMEM */ + +#ifdef CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID +#define early_pfn_to_nid(pfn) pa_to_nid(((unsigned long)pfn) << PAGE_SHIFT) +#endif + #endif /* _ASM_MMZONE_H_ */