Messages in this thread | | | Date | Thu, 11 Mar 2021 09:33:02 +0000 | From | Will Deacon <> | Subject | Re: [RFC] mm: Enable generic pfn_valid() to handle early sections with memmap holes |
| |
On Thu, Mar 11, 2021 at 01:22:53PM +0530, Anshuman Khandual wrote: > On 3/8/21 2:25 PM, Mike Rapoport wrote: > > On Mon, Mar 08, 2021 at 08:57:53AM +0530, Anshuman Khandual wrote: > >> Platforms like arm and arm64 have redefined pfn_valid() because their early > >> memory sections might have contained memmap holes caused by memblock areas > >> tagged with MEMBLOCK_NOMAP, which should be skipped while validating a pfn > >> for struct page backing. This scenario could be captured with a new option > >> CONFIG_HAVE_EARLY_SECTION_MEMMAP_HOLES and then generic pfn_valid() can be > >> improved to accommodate such platforms. This reduces overall code footprint > >> and also improves maintainability. > > > > I wonder whether arm64 would still need to free parts of its memmap after > > free_unused_memmap() is applicable when CONFIG_SPARSEMEM_VMEMMAP is not enabled. > I am not sure whether there still might be some platforms or boards which would > benefit from this. Hence lets just keep this unchanged for now.
In my opinion, unless there's a compelling reason for us to offer all of these different implementations of the memmap on arm64 then we shouldn't bother -- it's not like it's fun to maintain! Just use sparsemem vmemmap and be done with it. Is there some reason we can't do that?
Will
| |