[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20210524120833.1580295-1-liushixin2@huawei.com>
Date: Mon, 24 May 2021 20:08:33 +0800
From: Liu Shixin <liushixin2@...wei.com>
To: Jens Axboe <axboe@...nel.dk>
CC: <linux-block@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
Liu Shixin <liushixin2@...wei.com>
Subject: [PATCH -next] block: Replaced simple_strtol() with kstrtoint()/kstrtoul()
The simple_strtol() function is deprecated in some situation since
it does not check for the range overflow. Use kstrtoint()/kstrtoul()
instead.
Attention, if the end of the input string isn't '\n', simple_strtol() will
ignore following characters and return the value but kstrtoint()/kstrtoul()
will return an error code.
Signed-off-by: Liu Shixin <liushixin2@...wei.com>
---
drivers/block/brd.c | 3 +--
drivers/block/loop.c | 3 +--
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/block/brd.c b/drivers/block/brd.c
index 7562cf30b14e..5b43f6b2d506 100644
--- a/drivers/block/brd.c
+++ b/drivers/block/brd.c
@@ -358,8 +358,7 @@ MODULE_ALIAS("rd");
/* Legacy boot options - nonmodular */
static int __init ramdisk_size(char *str)
{
- rd_size = simple_strtol(str, NULL, 0);
- return 1;
+ return !kstrtoul(str, 0, &rd_size);
}
__setup("ramdisk_size=", ramdisk_size);
#endif
diff --git a/drivers/block/loop.c b/drivers/block/loop.c
index d58d68f3c7cd..9fe595afa9cf 100644
--- a/drivers/block/loop.c
+++ b/drivers/block/loop.c
@@ -2415,8 +2415,7 @@ module_exit(loop_exit);
#ifndef MODULE
static int __init max_loop_setup(char *str)
{
- max_loop = simple_strtol(str, NULL, 0);
- return 1;
+ return !kstrtoint(str, 0, &max_loop);
}
__setup("max_loop=", max_loop_setup);
--
2.18.0.huawei.25
Powered by blists - more mailing lists