[RFC] arm64: mm: update max_pfn after memory hotplug

Georgi Djakov quic_c_gdjako at quicinc.com
Mon Sep 27 16:22:59 PDT 2021


On 9/27/2021 6:51 PM, David Hildenbrand wrote:
> On 24.09.21 00:54, Chris Goldsworthy wrote:
>> From: Sudarshan Rajagopalan <quic_sudaraja at quicinc.com>
>>
>> After new memory blocks have been hotplugged, max_pfn and max_low_pfn
>> needs updating to reflect on new PFNs being hot added to system.
>>
>> Signed-off-by: Sudarshan Rajagopalan <quic_sudaraja at quicinc.com>
>> Signed-off-by: Chris Goldsworthy <quic_cgoldswo at quicinc.com>
>> ---
>>   arch/arm64/mm/mmu.c | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c
>> index cfd9deb..fd85b51 100644
>> --- a/arch/arm64/mm/mmu.c
>> +++ b/arch/arm64/mm/mmu.c
>> @@ -1499,6 +1499,11 @@ int arch_add_memory(int nid, u64 start, u64 size,
>>       if (ret)
>>           __remove_pgd_mapping(swapper_pg_dir,
>>                        __phys_to_virt(start), size);
>> +    else {
>> +        max_pfn = PFN_UP(start + size);
>> +        max_low_pfn = max_pfn;
>> +    }
>> +
>>       return ret;
> 
> Note: didn't verify if updating max_low_pfn is correct here.

My understanding is that max_low_pfn defines the low/high memory
boundary and it should be also updated.

Thanks,
Georgi



More information about the linux-arm-kernel mailing list