Thread (60 messages) 60 messages, 7 authors, 2024-07-23

Re: [PATCH 05/17] arch, mm: pull out allocation of NODE_DATA to generic code

From: Mike Rapoport <rppt@kernel.org>
Date: 2024-07-20 10:27:15
Also in: linux-acpi, linux-arch, linux-arm-kernel, linux-cxl, linux-devicetree, linux-mips, linux-mm, linux-riscv, linux-s390, linux-sh, lkml, loongarch, nvdimm, sparclinux

On Wed, Jul 17, 2024 at 04:42:48PM +0200, David Hildenbrand wrote:
On 16.07.24 13:13, Mike Rapoport wrote:
quoted
From: "Mike Rapoport (Microsoft)" <rppt@kernel.org>

Architectures that support NUMA duplicate the code that allocates
NODE_DATA on the node-local memory with slight variations in reporting
of the addresses where the memory was allocated.

Use x86 version as the basis for the generic alloc_node_data() function
and call this function in architecture specific numa initialization.

Signed-off-by: Mike Rapoport (Microsoft) <rppt@kernel.org>
---
[...]
quoted
diff --git a/arch/mips/loongson64/numa.c b/arch/mips/loongson64/numa.c
index 9208eaadf690..909f6cec3a26 100644
--- a/arch/mips/loongson64/numa.c
+++ b/arch/mips/loongson64/numa.c
@@ -81,12 +81,8 @@ static void __init init_topology_matrix(void)
  static void __init node_mem_init(unsigned int node)
  {
-	struct pglist_data *nd;
  	unsigned long node_addrspace_offset;
  	unsigned long start_pfn, end_pfn;
-	unsigned long nd_pa;
-	int tnid;
-	const size_t nd_size = roundup(sizeof(pg_data_t), SMP_CACHE_BYTES);
One interesting change is that we now always round up to full pages on
architectures where we previously rounded up to SMP_CACHE_BYTES.
I did some git archaeology and it seems that round up to full pages on x86
backdates to bootmem era when allocation granularity was PAGE_SIZE anyway.
I'm going to change that to SMP_CACHE_BYTES in v2.
 
I assume we don't really expect a significant growth in memory consumption
that we care about, especially because most systems with many nodes also
have  quite some memory around.
-- 
Sincerely yours,
Mike.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help