Re: [PATCH] mm/spase: never partially remove memmap for early section

From: David Hildenbrand
Date: Thu Jun 25 2020 - 01:53:53 EST




> Am 25.06.2020 um 01:47 schrieb Dan Williams <dan.j.williams@xxxxxxxxx>:
>
> ïOn Wed, Jun 24, 2020 at 3:44 PM Wei Yang
> <richard.weiyang@xxxxxxxxxxxxxxxxx> wrote:
> [..]
>>> So, you are right that there is a mismatch here, but I think the
>>> comprehensive fix is to allow early sections to be partially
>>> depopulated/repopulated rather than have section_activate() and
>>> section_deacticate() special case early sections. The special casing
>>> is problematic in retrospect as section_deactivate() can't be
>>> maintained without understand special rules in section_activate().
>>
>> Hmm... This means we need to adjust pfn_valid() too, which always return true
>> for early sections.
>
> Right, rather than carry workarounds in 3 locations, and the bug that
> has resulted from then getting out of sync, just teach early section
> mapping to allow for the subsection populate/depopulate.
>

I prefer the easy fix first - IOW what we Here here. Especially, pfn_to_online_page() will need changes as well.

At least my ack stands.