Re: [v6 01/15] x86/mm: reserve only exiting low pages

From: Pasha Tatashin
Date: Mon Aug 14 2017 - 09:32:13 EST


Correct, the pgflags asserts were triggered when we were setting reserved
flags to struct page for PFN 0 in which was never initialized through
__init_single_page(). The reason they were triggered is because we set all
uninitialized memory to ones in one of the debug patches.

And why don't we need the same treatment for other architectures?


I have not seen similar issues on other architectures. At least this low memory reserve is x86 specific for BIOS purposes:

Documentation/admin-guide/kernel-parameters.txt
3624 reservelow= [X86]
3625 Format: nn[K]
3626 Set the amount of memory to reserve for BIOS at
3627 the bottom of the address space.

If there are similar cases with other architectures, they will be caught by the last patch in this series, where all allocated memory is set to ones, and page flags asserts will be triggered. I have boot-tested on SPARC, ARM, and x86.

Pasha