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

From: Wei Yang
Date: Thu Jun 25 2020 - 18:39:57 EST


On Thu, Jun 25, 2020 at 07:53:37AM +0200, David Hildenbrand wrote:
>
>
>> 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.
>

Hi, David,

Which part of pfn_to_online_page() needs to be changed? pfn_valid_within()
would call pfn_valid() to check the pfn first. This looks enough for me.

I may not follow you at this part.

>At least my ack stands.

--
Wei Yang
Help you, Help me