diff mbox series

[v3] mm/page_alloc: Simplify free_page_is_bad by removing free_page_is_bad_report

Message ID 20250326012434.918844-1-ye.liu@linux.dev (mailing list archive)
State New
Headers show
Series [v3] mm/page_alloc: Simplify free_page_is_bad by removing free_page_is_bad_report | expand

Commit Message

Ye Liu March 26, 2025, 1:24 a.m. UTC
From: Ye Liu <liuye@kylinos.cn>

Refactors the free_page_is_bad function by directly calling bad_page() 
instead of using the intermediary function free_page_is_bad_report(). 
The removal of free_page_is_bad_report() reduces unnecessary indirection,
making the code cleaner and easier to read.

The functionality remains the same, as free_page_is_bad_report() was
merely a wrapper for the bad_page() call. The patch also improves
maintainability by reducing the function call depth.

Signed-off-by: Ye Liu <liuye@kylinos.cn>
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>

---
V3: Delete 'This patch'.
V2: Simplify the code by removing unnecessary line breaks.
---
---
 mm/page_alloc.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

Comments

Oscar Salvador March 27, 2025, 10:58 a.m. UTC | #1
On Wed, Mar 26, 2025 at 09:24:34AM +0800, Ye Liu wrote:
> From: Ye Liu <liuye@kylinos.cn>
> 
> Refactors the free_page_is_bad function by directly calling bad_page() 
> instead of using the intermediary function free_page_is_bad_report(). 
> The removal of free_page_is_bad_report() reduces unnecessary indirection,
> making the code cleaner and easier to read.
> 
> The functionality remains the same, as free_page_is_bad_report() was
> merely a wrapper for the bad_page() call. The patch also improves
> maintainability by reducing the function call depth.

I would trim this down.

> 
> Signed-off-by: Ye Liu <liuye@kylinos.cn>
> Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>

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

Patch

diff --git a/mm/page_alloc.c b/mm/page_alloc.c
index 61d6a3b1b286..60c54ba78a11 100644
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -933,19 +933,13 @@  static const char *page_bad_reason(struct page *page, unsigned long flags)
 	return bad_reason;
 }
 
-static void free_page_is_bad_report(struct page *page)
-{
-	bad_page(page,
-		 page_bad_reason(page, PAGE_FLAGS_CHECK_AT_FREE));
-}
-
 static inline bool free_page_is_bad(struct page *page)
 {
 	if (likely(page_expected_state(page, PAGE_FLAGS_CHECK_AT_FREE)))
 		return false;
 
 	/* Something has gone sideways, find it */
-	free_page_is_bad_report(page);
+	bad_page(page, page_bad_reason(page, PAGE_FLAGS_CHECK_AT_FREE));
 	return true;
 }