phys_to_nid() maps physical address to NUMA node id. This is
implemented by building perfect hash in compute_hash_shift() during
initialization.
However, with SPARSE memory model, the nid is encoded in page flags.
The perfect hash implementation was for DISCONTIG memory model which
got removed years ago by b263295dbf (x86: 64-bit, make sparsemem
vmemmap the only memory model).
So, the perfect hash ends up being used only during initialization
when the core SPARSE code already provides perfectly acceptable
generic early_pfn_to_nid() implementation.
Drop phys_to_nid() and use the generic ealry_pfn_to_nid() instead.
Signed-off-by: Tejun Heo<tj@xxxxxxxxxx>
Cc: Christoph Lameter<cl@xxxxxxxxxxxxxxxxxxxx>
Cc: Ingo Molnar<mingo@xxxxxxxxxx>
Cc: Yinghai Lu<yinghai@xxxxxxxxxx>
Cc: "H. Peter Anvin"<hpa@xxxxxxxxx>
Cc: Thomas Gleixner<tglx@xxxxxxxxxxxxx>
---
If no one objects, will route through x86-mm. Thanks.
arch/x86/Kconfig | 4 -
arch/x86/include/asm/mmzone_64.h | 23 -------
arch/x86/mm/numa_64.c | 123 ---------------------------------------
3 files changed, 1 insertion(+), 149 deletions(-)