[PATCH] fbdev/sh_mobile_lcdcfb: Replace deprecated simple_strtol with kstrtol

Cong Liu posted 1 patch 1 year, 10 months ago
drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH] fbdev/sh_mobile_lcdcfb: Replace deprecated simple_strtol with kstrtol
Posted by Cong Liu 1 year, 10 months ago
This patch replaces the use of the deprecated simple_strtol [1] function
in the sh_mobile_lcdcfb.c file with the recommended kstrtol function.
This change improves error handling and boundary checks.

[1] https://www.kernel.org/doc/html/latest/process/deprecated.html#simple-strtol-simple-strtoll-simple-strtoul-simple-strtoull

Signed-off-by: Cong Liu <liucong2@kylinos.cn>
---
 drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/video/fbdev/sh_mobile_lcdcfb.c b/drivers/video/fbdev/sh_mobile_lcdcfb.c
index eb2297b37504..5fc7d74b273e 100644
--- a/drivers/video/fbdev/sh_mobile_lcdcfb.c
+++ b/drivers/video/fbdev/sh_mobile_lcdcfb.c
@@ -1278,11 +1278,11 @@ overlay_position_store(struct device *dev, struct device_attribute *attr,
 	int pos_x;
 	int pos_y;
 
-	pos_x = simple_strtol(buf, &endp, 10);
+	pos_x = kstrtol(buf, &endp, 10);
 	if (*endp != ',')
 		return -EINVAL;
 
-	pos_y = simple_strtol(endp + 1, &endp, 10);
+	pos_y = kstrtol(endp + 1, &endp, 10);
 	if (isspace(*endp))
 		endp++;
 
-- 
2.34.1
Re: [PATCH] fbdev/sh_mobile_lcdcfb: Replace deprecated simple_strtol with kstrtol
Posted by Jani Nikula 1 year, 10 months ago
On Thu, 01 Feb 2024, Cong Liu <liucong2@kylinos.cn> wrote:
> This patch replaces the use of the deprecated simple_strtol [1] function
> in the sh_mobile_lcdcfb.c file with the recommended kstrtol function.
> This change improves error handling and boundary checks.
>
> [1] https://www.kernel.org/doc/html/latest/process/deprecated.html#simple-strtol-simple-strtoll-simple-strtoul-simple-strtoull
>
> Signed-off-by: Cong Liu <liucong2@kylinos.cn>

This is completely wrong, and obviously not tested at all.

The recommended replacements are *not* drop-in replacements. Look into
the documentation of the functions.

BR,
Jani.

> ---
>  drivers/video/fbdev/sh_mobile_lcdcfb.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/video/fbdev/sh_mobile_lcdcfb.c b/drivers/video/fbdev/sh_mobile_lcdcfb.c
> index eb2297b37504..5fc7d74b273e 100644
> --- a/drivers/video/fbdev/sh_mobile_lcdcfb.c
> +++ b/drivers/video/fbdev/sh_mobile_lcdcfb.c
> @@ -1278,11 +1278,11 @@ overlay_position_store(struct device *dev, struct device_attribute *attr,
>  	int pos_x;
>  	int pos_y;
>  
> -	pos_x = simple_strtol(buf, &endp, 10);
> +	pos_x = kstrtol(buf, &endp, 10);
>  	if (*endp != ',')
>  		return -EINVAL;
>  
> -	pos_y = simple_strtol(endp + 1, &endp, 10);
> +	pos_y = kstrtol(endp + 1, &endp, 10);
>  	if (isspace(*endp))
>  		endp++;

-- 
Jani Nikula, Intel