[PATCH] staging: speakup: remove simple_strtoul()
Justin Skists
justin.skists at juzza.co.uk
Sun May 20 05:22:42 EDT 2018
On 20 May 2018 09:59:00 BST, Justin Skists <justin.skists at juzza.co.uk> wrote:
>
>
>Hi Gabriel,
>
>On 19 May 2018 23:02:36 BST, Gabriel Fedel <fedel at fedel.net.br> wrote:
>>Replace simple_strtoul() with kstrtoul(), because simple_strtoul() is
>>obsolete
>>
>>Signed-off-by: Gabriel Fedel <fedel at fedel.net.br>
>>---
>> drivers/staging/speakup/kobjects.c | 7 +++++--
>> 1 file changed, 5 insertions(+), 2 deletions(-)
>>
>>diff --git a/drivers/staging/speakup/kobjects.c
>>b/drivers/staging/speakup/kobjects.c
>>index f1f9022..ddc5ac3 100644
>>--- a/drivers/staging/speakup/kobjects.c
>>+++ b/drivers/staging/speakup/kobjects.c
>>@@ -154,7 +154,9 @@ static ssize_t chars_chartab_store(struct kobject
>>*kobj,
>> continue;
>> }
>>
>>- index = simple_strtoul(cp, &temp, 10);
>>+ if kstrtoul((char *)cp, 10, &index) != 0
>>+ pr_warn("overflow or parsing error has occurred");
>>+
>> if (index > 255) {
>> rejected++;
>> cp = linefeed + 1;
>>@@ -787,7 +789,8 @@ static ssize_t message_store_helper(const char
>>*buf,
>>size_t count,
>> continue;
>> }
>>
>>- index = simple_strtoul(cp, &temp, 10);
>>+ if kstrtoul((char *)cp, 10, &index) != 0
>>+ pr_warn("overflow or parsing error has occurred");
>>
>> while ((temp < linefeed) && (*temp == ' ' || *temp == '\t'))
>> temp++;
>
>Sorry. simple_strtoul() would've updated temp which would mean the
>behaviour at this while loop is now different.
Oops. I shouldn't review patches without coffee. With a closer look at what the while loop was doing, I don't think it is a real issue.
Best regards,
Justin
More information about the Speakup
mailing list