Re: mmotm 2021-07-23-15-03 uploaded (mm/memory_hotplug.c)

From: Randy Dunlap
Date: Mon Jul 26 2021 - 23:32:50 EST


On 7/26/21 12:14 AM, David Hildenbrand wrote:
> On 24.07.21 20:49, Randy Dunlap wrote:
>> On 7/23/21 3:04 PM, akpm@xxxxxxxxxxxxxxxxxxxx wrote:
>>> The mm-of-the-moment snapshot 2021-07-23-15-03 has been uploaded to
>>>
>>>     https://www.ozlabs.org/~akpm/mmotm/
>>>
>>> mmotm-readme.txt says
>>>
>>> README for mm-of-the-moment:
>>>
>>> https://www.ozlabs.org/~akpm/mmotm/
>>>
>>> This is a snapshot of my -mm patch queue.  Uploaded at random hopefully
>>> more than once a week.
>>>
>>> You will need quilt to apply these patches to the latest Linus release (5.x
>>> or 5.x-rcY).  The series file is in broken-out.tar.gz and is duplicated in
>>> https://ozlabs.org/~akpm/mmotm/series
>>>
>>> The file broken-out.tar.gz contains two datestamp files: .DATE and
>>> .DATE-yyyy-mm-dd-hh-mm-ss.  Both contain the string yyyy-mm-dd-hh-mm-ss,
>>> followed by the base kernel version against which this patch series is to
>>> be applied.
>>>
>>
>> on x86_64:
>> # CONFIG_CMA is not set
>>
>> mm-memory_hotplug-memory-group-aware-auto-movable-online-policy.patch
>>
>>
>>
>> ../mm/memory_hotplug.c: In function ‘auto_movable_stats_account_zone’:
>> ../mm/memory_hotplug.c:748:33: error: ‘struct zone’ has no member named ‘cma_pages’; did you mean ‘managed_pages’?
>>     stats->movable_pages += zone->cma_pages;
>>                                   ^~~~~~~~~
>>                                   managed_pages
>> ../mm/memory_hotplug.c:750:38: error: ‘struct zone’ has no member named ‘cma_pages’; did you mean ‘managed_pages’?
>>     stats->kernel_early_pages -= zone->cma_pages;
>>                                        ^~~~~~~~~
>>                                        managed_pages
>>
>>
>
> Thanks Randy, the following on top should make it fly:
>
> diff --git a/mm/memory_hotplug.c b/mm/memory_hotplug.c
> index bfdaa28eb86f..fa1a0afd32ba 100644
> --- a/mm/memory_hotplug.c
> +++ b/mm/memory_hotplug.c
> @@ -741,13 +741,15 @@ static void auto_movable_stats_account_zone(struct auto_movable_stats *stats,
>         if (zone_idx(zone) == ZONE_MOVABLE) {
>                 stats->movable_pages += zone->present_pages;
>         } else {
> +               stats->kernel_early_pages += zone->present_early_pages;
> +#ifdef CONFIG_CMA
>                 /*
>                  * CMA pages (never on hotplugged memory) behave like
>                  * ZONE_MOVABLE.
>                  */
>                 stats->movable_pages += zone->cma_pages;
> -               stats->kernel_early_pages += zone->present_early_pages;
>                 stats->kernel_early_pages -= zone->cma_pages;
> +#endif /* CONFIG_CMA */
>         }
>  }
>  struct auto_movable_group_stats {
>
>

Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> # build-tested

Thanks.

--
~Randy