linux/arch/ia64/mm
Mel Gorman 8a942fdea5 mm: meminit: make __early_pfn_to_nid SMP-safe and introduce meminit_pfn_in_nid
__early_pfn_to_nid() use static variables to cache recent lookups as
memblock lookups are very expensive but it assumes that memory
initialisation is single-threaded.  Parallel initialisation of struct
pages will break that assumption so this patch makes __early_pfn_to_nid()
SMP-safe by requiring the caller to cache recent search information.
early_pfn_to_nid() keeps the same interface but is only safe to use early
in boot due to the use of a global static variable.  meminit_pfn_in_nid()
is an SMP-safe version that callers must maintain their own state for.

Signed-off-by: Mel Gorman <mgorman@suse.de>
Tested-by: Nate Zimmer <nzimmer@sgi.com>
Tested-by: Waiman Long <waiman.long@hp.com>
Tested-by: Daniel J Blueman <daniel@numascale.com>
Acked-by: Pekka Enberg <penberg@kernel.org>
Cc: Robin Holt <robinmholt@gmail.com>
Cc: Nate Zimmer <nzimmer@sgi.com>
Cc: Dave Hansen <dave.hansen@intel.com>
Cc: Waiman Long <waiman.long@hp.com>
Cc: Scott Norton <scott.norton@hp.com>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-06-30 19:44:56 -07:00
..
contig.c mm, show_mem: remove SHOW_MEM_FILTER_PAGE_COUNT 2014-01-21 16:19:44 -08:00
discontig.c mm, show_mem: remove SHOW_MEM_FILTER_PAGE_COUNT 2014-01-21 16:19:44 -08:00
extable.c [IA64] fix compile error in arch/ia64/mm/extable.c 2009-06-15 09:17:50 -07:00
fault.c mm/fault, arch: Use pagefault_disable() to check for disabled pagefaults in the handler 2015-05-19 08:39:15 +02:00
hugetlbpage.c mm/hugetlb: reduce arch dependent code about huge_pmd_unshare 2015-06-24 17:49:41 -07:00
init.c ia64: remove paravirt code 2015-06-10 14:26:32 -07:00
ioremap.c Add WB/UC check for early_ioremap 2013-03-19 16:14:52 -07:00
Makefile
numa.c mm: meminit: make __early_pfn_to_nid SMP-safe and introduce meminit_pfn_in_nid 2015-06-30 19:44:56 -07:00
tlb.c IA64: drivers: remove __dev* attributes. 2013-01-03 15:57:13 -08:00