[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <rsiev2lo6zgfe2nhc2rvipcq7lr67v45d3znzdqozbhrlorvzi@7hpgsgmnibmy>
Date: Tue, 16 Dec 2025 09:41:08 +0100
From: Jan Kara <jack@...e.cz>
To: Thorsten Blum <thorsten.blum@...ux.dev>
Cc: Jan Kara <jack@...e.cz>, Alexander Viro <viro@...iv.linux.org.uk>,
Christian Brauner <brauner@...nel.org>, linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] namespace: Replace simple_strtoul with kstrtoul to parse
boot params
On Mon 15-12-25 15:17:14, Thorsten Blum wrote:
> On 15. Dec 2025, at 10:15, Jan Kara wrote:
> > On Sun 14-12-25 16:31:42, Thorsten Blum wrote:
> >> Replace simple_strtoul() with the recommended kstrtoul() for parsing the
> >> 'mhash_entries=' and 'mphash_entries=' boot parameters.
> >>
> >> Check the return value of kstrtoul() and reject invalid values. This
> >> adds error handling while preserving behavior for existing values, and
> >> removes use of the deprecated simple_strtoul() helper.
> >>
> >> Signed-off-by: Thorsten Blum <thorsten.blum@...ux.dev>
> >
> > ...
> >
> >> @@ -49,20 +49,14 @@ static unsigned int mp_hash_shift __ro_after_init;
> >> static __initdata unsigned long mhash_entries;
> >> static int __init set_mhash_entries(char *str)
> >> {
> >> - if (!str)
> >> - return 0;
> >> - mhash_entries = simple_strtoul(str, &str, 0);
> >> - return 1;
> >> + return kstrtoul(str, 0, &mhash_entries) == 0;
> >> }
> >> __setup("mhash_entries=", set_mhash_entries);
> >
> > I'm not very experienced with the cmdline option parsing but AFAICT the
> > 'str' argument can be indeed NULL and kstrtoul() will not be happy with
> > that?
>
> I don't think 'str' can be NULL. If you don't pass a value, 'str' will
> be the empty string (just tested this).
Ah, ok. The NULL value can happen only for early parameters and for
arguments without '=' sign in the name. So I'm retracting my objection and
feel free to add:
Reviewed-by: Jan Kara <jack@...e.cz>
Honza
--
Jan Kara <jack@...e.com>
SUSE Labs, CR
Powered by blists - more mailing lists