Re: [PATCH] s390/spinlock: Replace simple_strtoul with kstrtouint in spin_retry_setup

From: Alexander Gordeev

Date: Thu Dec 18 2025 - 02:59:41 EST


On Sat, Dec 13, 2025 at 01:32:44PM +0100, Thorsten Blum wrote:
> Replace simple_strtoul() with the recommended kstrtouint() for parsing
> the 'spin_retry=' boot parameter. Unlike simple_strtoul(), which returns
> an unsigned long, kstrtouint() converts the string directly to an
> unsigned integer.
>
> Check the return value of kstrtouint() and reject invalid values. This
> adds error handling while preserving existing behavior for valid values,
> and removes use of the deprecated simple_strtoul() helper.
>
> Signed-off-by: Thorsten Blum <thorsten.blum@xxxxxxxxx>
> ---
> arch/s390/lib/spinlock.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/arch/s390/lib/spinlock.c b/arch/s390/lib/spinlock.c
> index 10db1e56a811..b4ca53356b96 100644
> --- a/arch/s390/lib/spinlock.c
> +++ b/arch/s390/lib/spinlock.c
> @@ -34,8 +34,7 @@ early_initcall(spin_retry_init);
> */
> static int __init spin_retry_setup(char *str)
> {
> - spin_retry = simple_strtoul(str, &str, 0);
> - return 1;
> + return kstrtouint(str, 0, &spin_retry) == 0;

Why not to use kstrtouint() return value, like other parameters do?

> }
> __setup("spin_retry=", spin_retry_setup);
>
> --
> Thorsten Blum <thorsten.blum@xxxxxxxxx>

Thanks!