Re: [PATCH 1/2] drivers/base/memory: Simplify add_boot_memory_block()

From: Andrew Morton
Date: Fri Feb 14 2025 - 17:57:34 EST


On Fri, 14 Feb 2025 16:35:03 +1000 Gavin Shan <gshan@xxxxxxxxxx> wrote:

> It's unnecessary to keep the variable @section_count in the function
> because the device for the specific memory block will be added if
> any of its memory section is present. The variable @section_count
> records the number of present memory sections in the specific memory
> block, which isn't needed.
>
> Simplify the function by dropping the variable @section_count. No
> functional change intended.
>
> ...
>
> static int __init add_boot_memory_block(unsigned long base_section_nr)
> {
> - int section_count = 0;
> unsigned long nr;
>
> for (nr = base_section_nr; nr < base_section_nr + sections_per_block;

mm/sparse.c has a for_each_present_section_nr() - is that usable here?

> - nr++)
> - if (present_section_nr(nr))
> - section_count++;
> + nr++) {
> + if (present_section_nr(nr)) {
> + return add_memory_block(memory_block_id(base_section_nr),
> + MEM_ONLINE, NULL, NULL);
> + }
> + }
>
> ...
>