From 8be54d770bcf6f7b203a705aefed2ec845e1b748 Mon Sep 17 00:00:00 2001 From: Max Filippov Date: Sun, 1 Dec 2013 10:16:56 +0400 Subject: [PATCH] xtensa: ISS: avoid simple_strtoul usage Signed-off-by: Max Filippov Signed-off-by: Chris Zankel --- arch/xtensa/platforms/iss/network.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/arch/xtensa/platforms/iss/network.c b/arch/xtensa/platforms/iss/network.c index 3aff4302f938..7f84b5c68123 100644 --- a/arch/xtensa/platforms/iss/network.c +++ b/arch/xtensa/platforms/iss/network.c @@ -612,22 +612,22 @@ static int __init iss_net_setup(char *str) struct iss_net_init *new; struct list_head *ele; char *end; - int n; + int rc; + unsigned n; - n = simple_strtoul(str, &end, 0); - if (end == str) { - printk(ERR "Failed to parse '%s'\n", str); - return 1; - } - if (n < 0) { - printk(ERR "Device %d is negative\n", n); - return 1; - } - str = end; - if (*str != '=') { + end = strchr(str, '='); + if (!end) { printk(ERR "Expected '=' after device number\n"); return 1; } + *end = 0; + rc = kstrtouint(str, 0, &n); + *end = '='; + if (rc < 0) { + printk(ERR "Failed to parse '%s'\n", str); + return 1; + } + str = end; spin_lock(&devices_lock); @@ -640,7 +640,7 @@ static int __init iss_net_setup(char *str) spin_unlock(&devices_lock); if (device && device->index == n) { - printk(ERR "Device %d already configured\n", n); + printk(ERR "Device %u already configured\n", n); return 1; }