kernel/params: fix handling of signed integer types
Commit 6072ddc852
("kernel: replace strict_strto*() with kstrto*()")
broke the handling of signed integer types, fix it.
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Reported-by: Christian Kujau <lists@nerdbynature.de>
Tested-by: Christian Kujau <lists@nerdbynature.de>
Cc: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
f2e98aa830
commit
3a126f85e0
|
@ -254,11 +254,11 @@ int parse_args(const char *doing,
|
||||||
|
|
||||||
|
|
||||||
STANDARD_PARAM_DEF(byte, unsigned char, "%hhu", unsigned long, kstrtoul);
|
STANDARD_PARAM_DEF(byte, unsigned char, "%hhu", unsigned long, kstrtoul);
|
||||||
STANDARD_PARAM_DEF(short, short, "%hi", long, kstrtoul);
|
STANDARD_PARAM_DEF(short, short, "%hi", long, kstrtol);
|
||||||
STANDARD_PARAM_DEF(ushort, unsigned short, "%hu", unsigned long, kstrtoul);
|
STANDARD_PARAM_DEF(ushort, unsigned short, "%hu", unsigned long, kstrtoul);
|
||||||
STANDARD_PARAM_DEF(int, int, "%i", long, kstrtoul);
|
STANDARD_PARAM_DEF(int, int, "%i", long, kstrtol);
|
||||||
STANDARD_PARAM_DEF(uint, unsigned int, "%u", unsigned long, kstrtoul);
|
STANDARD_PARAM_DEF(uint, unsigned int, "%u", unsigned long, kstrtoul);
|
||||||
STANDARD_PARAM_DEF(long, long, "%li", long, kstrtoul);
|
STANDARD_PARAM_DEF(long, long, "%li", long, kstrtol);
|
||||||
STANDARD_PARAM_DEF(ulong, unsigned long, "%lu", unsigned long, kstrtoul);
|
STANDARD_PARAM_DEF(ulong, unsigned long, "%lu", unsigned long, kstrtoul);
|
||||||
|
|
||||||
int param_set_charp(const char *val, const struct kernel_param *kp)
|
int param_set_charp(const char *val, const struct kernel_param *kp)
|
||||||
|
|
Loading…
Reference in New Issue