diff mbox series

[v2,2/3] drivers/base/memory: Improve add_boot_memory_block()

Message ID 20250311004657.82985-3-gshan@redhat.com (mailing list archive)
State New
Headers show
Series drivers/base/memory: Two cleanups | expand

Commit Message

Gavin Shan March 11, 2025, 12:46 a.m. UTC
It's unnecessary to count the present sections for the specified
block since the block will be added if any section in the block
is present. Besides, for_each_present_section_nr() can be reused
as Andrew Morton suggested.

Improve by using for_each_present_section_nr() and dropping the
unnecessary @section_count.

No functional changes intended.

Signed-off-by: Gavin Shan <gshan@redhat.com>
---
 drivers/base/memory.c | 17 ++++++++---------
 1 file changed, 8 insertions(+), 9 deletions(-)

Comments

David Hildenbrand March 11, 2025, 9:34 a.m. UTC | #1
On 11.03.25 01:46, Gavin Shan wrote:
> It's unnecessary to count the present sections for the specified
> block since the block will be added if any section in the block
> is present. Besides, for_each_present_section_nr() can be reused
> as Andrew Morton suggested.
> 
> Improve by using for_each_present_section_nr() and dropping the
> unnecessary @section_count.
> 
> No functional changes intended.
> 
> Signed-off-by: Gavin Shan <gshan@redhat.com>
> ---

Acked-by: David Hildenbrand <david@redhat.com>
Oscar Salvador March 11, 2025, 3:24 p.m. UTC | #2
On Tue, Mar 11, 2025 at 10:46:56AM +1000, Gavin Shan wrote:
> It's unnecessary to count the present sections for the specified
> block since the block will be added if any section in the block
> is present. Besides, for_each_present_section_nr() can be reused
> as Andrew Morton suggested.
> 
> Improve by using for_each_present_section_nr() and dropping the
> unnecessary @section_count.
> 
> No functional changes intended.
> 
> Signed-off-by: Gavin Shan <gshan@redhat.com>

Acked-by: Oscar Salvador <osalvador@suse.de>
diff mbox series

Patch

diff --git a/drivers/base/memory.c b/drivers/base/memory.c
index 348c5dbbfa68..f66e9d537c12 100644
--- a/drivers/base/memory.c
+++ b/drivers/base/memory.c
@@ -822,18 +822,17 @@  static int add_memory_block(unsigned long block_id, unsigned long state,
 
 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;
-	     nr++)
-		if (present_section_nr(nr))
-			section_count++;
+	for_each_present_section_nr(base_section_nr, nr) {
+		if (nr >= (base_section_nr + sections_per_block))
+			break;
 
-	if (section_count == 0)
-		return 0;
-	return add_memory_block(memory_block_id(base_section_nr),
-				MEM_ONLINE, NULL,  NULL);
+		return add_memory_block(memory_block_id(base_section_nr),
+					MEM_ONLINE, NULL, NULL);
+	}
+
+	return 0;
 }
 
 static int add_hotplug_memory_block(unsigned long block_id,