diff mbox series

mm: page_owner: use kstrtobool() to parse bool option

Message ID 20210401210909.3532086-1-slyfox@gentoo.org (mailing list archive)
State New, archived
Headers show
Series mm: page_owner: use kstrtobool() to parse bool option | expand

Commit Message

Sergei Trofimovich April 1, 2021, 9:09 p.m. UTC
I tried to use page_owner=1 for a while noticed too late it had
no effect as opposed to similar init_on_alloc=1 (these work).

Let's make them consistent.

The change decreses binary size slightly:
   text    data     bss     dec     hex filename
  12408     321      17   12746    31ca mm/page_owner.o.before
  12320     321      17   12658    3172 mm/page_owner.o.after

CC: Andrew Morton <akpm@linux-foundation.org>
CC: linux-mm@kvack.org
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
---
 mm/page_owner.c | 8 +-------
 1 file changed, 1 insertion(+), 7 deletions(-)

Comments

Matthew Wilcox April 1, 2021, 9:43 p.m. UTC | #1
On Thu, Apr 01, 2021 at 10:09:09PM +0100, Sergei Trofimovich wrote:
> I tried to use page_owner=1 for a while noticed too late it had
> no effect as opposed to similar init_on_alloc=1 (these work).
> 
> Let's make them consistent.
> 
> The change decreses binary size slightly:
>    text    data     bss     dec     hex filename
>   12408     321      17   12746    31ca mm/page_owner.o.before
>   12320     321      17   12658    3172 mm/page_owner.o.after
> 
> CC: Andrew Morton <akpm@linux-foundation.org>
> CC: linux-mm@kvack.org
> Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>

Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>

Seems to me there are a few other places that could benefit from this.

kmemleak_boot_config()
early_kasan_flag()
early_kasan_flag_stacktrace()
nonx32_setup()

maybe others?  grep is our friend.
diff mbox series

Patch

diff --git a/mm/page_owner.c b/mm/page_owner.c
index d15c7c4994f5..63e4ecaba97b 100644
--- a/mm/page_owner.c
+++ b/mm/page_owner.c
@@ -41,13 +41,7 @@  static void init_early_allocated_pages(void);
 
 static int __init early_page_owner_param(char *buf)
 {
-	if (!buf)
-		return -EINVAL;
-
-	if (strcmp(buf, "on") == 0)
-		page_owner_enabled = true;
-
-	return 0;
+	return kstrtobool(buf, &page_owner_enabled);
 }
 early_param("page_owner", early_page_owner_param);