Re: [PATCH] firmware_loader: Replace simple_strtol() with kstrtoint()

From: Russ Weight
Date: Mon Apr 29 2024 - 16:50:53 EST


On Sat, Apr 27, 2024 at 04:25:32AM +0800, Haoyang Liu wrote:
> simple_strtol() is obsolete, use kstrtoint() instead.
>
> Signed-off-by: Haoyang Liu <tttturtleruss@xxxxxxxxxxx>
> Reviewed-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx>

Reviewed-by: Russ Weight <russ.weight@xxxxxxxxx>

> ---
> drivers/base/firmware_loader/sysfs.c | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/base/firmware_loader/sysfs.c b/drivers/base/firmware_loader/sysfs.c
> index c9c93b47d9a5..4de1cb243bee 100644
> --- a/drivers/base/firmware_loader/sysfs.c
> +++ b/drivers/base/firmware_loader/sysfs.c
> @@ -47,8 +47,12 @@ static ssize_t timeout_show(const struct class *class, const struct class_attrib
> static ssize_t timeout_store(const struct class *class, const struct class_attribute *attr,
> const char *buf, size_t count)
> {
> - int tmp_loading_timeout = simple_strtol(buf, NULL, 10);
> + int tmp_loading_timeout;
> + int res;
>
> + res = kstrtoint(buf, 10, &tmp_loading_timeout);
> + if (res < 0)
> + return res;
> if (tmp_loading_timeout < 0)
> tmp_loading_timeout = 0;
>
> @@ -157,8 +161,12 @@ static ssize_t firmware_loading_store(struct device *dev,
> struct fw_sysfs *fw_sysfs = to_fw_sysfs(dev);
> struct fw_priv *fw_priv;
> ssize_t written = count;
> - int loading = simple_strtol(buf, NULL, 10);
> + int loading;
> + int res;
>
> + res = kstrtoint(buf, 10, &loading);
> + if (res < 0)
> + return res;
> mutex_lock(&fw_lock);
> fw_priv = fw_sysfs->fw_priv;
> if (fw_state_is_aborted(fw_priv) || fw_state_is_done(fw_priv))
> --
> 2.25.1
>