[PATCH] x86/mm: Optimize the for loop in numa_nodemask_from_meminfo()

Yuntao Wang posted 1 patch 2 years ago
arch/x86/mm/numa.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] x86/mm: Optimize the for loop in numa_nodemask_from_meminfo()
Posted by Yuntao Wang 2 years ago
Since only the first `mi->nr_blks` elements of the `mi->blk` array contain
valid data, we do not need to iterate over the entire array.

Signed-off-by: Yuntao Wang <ytcoode@gmail.com>
---
 arch/x86/mm/numa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/mm/numa.c b/arch/x86/mm/numa.c
index b29ceb19e46e..e84f14a9462d 100644
--- a/arch/x86/mm/numa.c
+++ b/arch/x86/mm/numa.c
@@ -339,7 +339,7 @@ static void __init numa_nodemask_from_meminfo(nodemask_t *nodemask,
 {
 	int i;
 
-	for (i = 0; i < ARRAY_SIZE(mi->blk); i++)
+	for (i = 0; i < mi->nr_blks; i++)
 		if (mi->blk[i].start != mi->blk[i].end &&
 		    mi->blk[i].nid != NUMA_NO_NODE)
 			node_set(mi->blk[i].nid, *nodemask);
-- 
2.43.0