Re: [PATCH -next] init/main: Use strtobool for param parsing in set_debug_rodata()

From: Mark Rutland
Date: Mon Oct 24 2022 - 07:03:41 EST


On Mon, Oct 24, 2022 at 09:38:17AM +0000, Tong Tiangen wrote:
> Aftern parsing "full", we can still use strtobool rather than "on" and
> "off" parsing in set_debug_rodata().
>
> Fixes: 2e8cff0a0eee ("arm64: fix rodata=full")

Why do you think this is a fix; what do you believe is broken?

As noted in the commit message for 2e8cff0a0eee, we *deliberately* don't use
strtobool() here so that we don't accept garbage values like "ful".

NAK to this patch as it stands.

Thanks,
Mark.

> Signed-off-by: Tong Tiangen <tongtiangen@xxxxxxxxxx>
> ---
> init/main.c | 8 +-------
> 1 file changed, 1 insertion(+), 7 deletions(-)
>
> diff --git a/init/main.c b/init/main.c
> index aa21add5f7c5..f420e20b1fa3 100644
> --- a/init/main.c
> +++ b/init/main.c
> @@ -1463,13 +1463,7 @@ static int __init set_debug_rodata(char *str)
> if (arch_parse_debug_rodata(str))
> return 0;
>
> - if (str && !strcmp(str, "on"))
> - rodata_enabled = true;
> - else if (str && !strcmp(str, "off"))
> - rodata_enabled = false;
> - else
> - pr_warn("Invalid option string for rodata: '%s'\n", str);
> - return 0;
> + return strtobool(str, &rodata_enabled);
> }
> early_param("rodata", set_debug_rodata);
> #endif
> --
> 2.25.1
>