[PATCH] dcache: Replace simple_strtoul with kstrtoul in set_dhash_entries

Thorsten Blum posted 1 patch 1 day, 22 hours ago
fs/dcache.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
[PATCH] dcache: Replace simple_strtoul with kstrtoul in set_dhash_entries
Posted by Thorsten Blum 1 day, 22 hours ago
Replace simple_strtoul() with the recommended kstrtoul() for parsing the
'dhash_entries=' boot parameter.

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@linux.dev>
---
 fs/dcache.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/fs/dcache.c b/fs/dcache.c
index dc2fff4811d1..ec275f4fd81c 100644
--- a/fs/dcache.c
+++ b/fs/dcache.c
@@ -3227,10 +3227,7 @@ EXPORT_SYMBOL(d_parent_ino);
 static __initdata unsigned long dhash_entries;
 static int __init set_dhash_entries(char *str)
 {
-	if (!str)
-		return 0;
-	dhash_entries = simple_strtoul(str, &str, 0);
-	return 1;
+	return kstrtoul(str, 0, &dhash_entries) == 0;
 }
 __setup("dhash_entries=", set_dhash_entries);
 
-- 
Thorsten Blum <thorsten.blum@linux.dev>
GPG: 1D60 735E 8AEF 3BE4 73B6  9D84 7336 78FD 8DFE EAD4
Re: [PATCH] dcache: Replace simple_strtoul with kstrtoul in set_dhash_entries
Posted by Jan Kara 1 day ago
On Tue 16-12-25 15:52:37, Thorsten Blum wrote:
> Replace simple_strtoul() with the recommended kstrtoul() for parsing the
> 'dhash_entries=' boot parameter.
> 
> 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@linux.dev>

Looks good. Feel free to add:

Reviewed-by: Jan Kara <jack@suse.cz>

								Honza

> ---
>  fs/dcache.c | 5 +----
>  1 file changed, 1 insertion(+), 4 deletions(-)
> 
> diff --git a/fs/dcache.c b/fs/dcache.c
> index dc2fff4811d1..ec275f4fd81c 100644
> --- a/fs/dcache.c
> +++ b/fs/dcache.c
> @@ -3227,10 +3227,7 @@ EXPORT_SYMBOL(d_parent_ino);
>  static __initdata unsigned long dhash_entries;
>  static int __init set_dhash_entries(char *str)
>  {
> -	if (!str)
> -		return 0;
> -	dhash_entries = simple_strtoul(str, &str, 0);
> -	return 1;
> +	return kstrtoul(str, 0, &dhash_entries) == 0;
>  }
>  __setup("dhash_entries=", set_dhash_entries);
>  
> -- 
> Thorsten Blum <thorsten.blum@linux.dev>
> GPG: 1D60 735E 8AEF 3BE4 73B6  9D84 7336 78FD 8DFE EAD4
> 
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR