2021-04-01 21:10:56

by Sergei Trofimovich

[permalink] [raw]
Subject: [PATCH] mm: page_owner: use kstrtobool() to parse bool option

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 <[email protected]>
CC: [email protected]
Signed-off-by: Sergei Trofimovich <[email protected]>
---
mm/page_owner.c | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)

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);

--
2.31.1


2021-04-01 21:44:52

by Matthew Wilcox

[permalink] [raw]
Subject: Re: [PATCH] mm: page_owner: use kstrtobool() to parse bool option

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 <[email protected]>
> CC: [email protected]
> Signed-off-by: Sergei Trofimovich <[email protected]>

Reviewed-by: Matthew Wilcox (Oracle) <[email protected]>

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.