Current calculation of max_low_pfn is introduced in commit af84eab20891
("[PATCH] uml: fix LVM crash"). It is intended to set max_low_pfn to the
same value as max_pfn.

But I am not sure why the max_pfn is set to totalram_pages, which
represents the number of usable pages in system instead of an absolute
page frame number. (The change history stops there.)

While we have already calculate it in setup_physmem(), so not necessary
to do it again.

Also this would help changing totalram_pages accounting, since we plan
to move the accounting into __free_pages_core(). With this change,
totalram_pages may not represent the total usable pages at this point,
since some pages would be deferred initialized.

Signed-off-by: Wei Yang <richard.weiy...@gmail.com>
CC: Jeff Dike <jd...@linux.intel.com>
Cc: Paolo 'Blaisorblade' Giarrusso <blaisorbl...@yahoo.it>
Cc: Alasdair G Kergon <a...@redhat.com>
CC: Andrew Morton <a...@linux-foundation.org>
CC: Mike Rapoport (IBM) <r...@kernel.org>
CC: David Hildenbrand <da...@redhat.com>

---
v2: remove redundant assignment of max_low_pfn
---
 arch/um/kernel/mem.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/um/kernel/mem.c b/arch/um/kernel/mem.c
index ca91accd64fc..a5b4fe2ad931 100644
--- a/arch/um/kernel/mem.c
+++ b/arch/um/kernel/mem.c
@@ -73,7 +73,6 @@ void __init mem_init(void)
 
        /* this will put all low memory onto the freelists */
        memblock_free_all();
-       max_low_pfn = totalram_pages();
        max_pfn = max_low_pfn;
        kmalloc_ok = 1;
 }
-- 
2.34.1


Reply via email to