Re: [PATCH] x86: kernel/early_printk.c simple_strtoul cleanup

From: Joe Perches
Date: Sun May 27 2012 - 16:51:16 EST


On Sun, 2012-05-27 at 10:48 -0600, Shuah Khan wrote:
> Change early_serial_init() to call kstrtoul() instead of calling obsoleted
> simple_strtoul().
[]
> diff --git a/arch/x86/kernel/early_printk.c b/arch/x86/kernel/early_printk.c
[]
> @@ -119,22 +119,27 @@ static __init void early_serial_init(char *s)
> unsigned char c;
> unsigned divisor;
> unsigned baud = DEFAULT_BAUD;
> - char *e;
> + unsigned long val;
> + ssize_t ret;
>
> if (*s == ',')
> ++s;
>
> if (*s) {
> - unsigned port;
> + unsigned port = 0;
> if (!strncmp(s, "0x", 2)) {
> - early_serial_base = simple_strtoul(s, &e, 16);
> + ret = kstrtoul(s, 16, &val);
> + if (!ret)
> + early_serial_base = val;

I believe none of the kstrto<foo> calls set
the value in the pointer unless successful so
you don't need a temporary and can simply use:

ret = kstrtoint(s, 16, &early_serial_base)
if (ret)

etc...


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/