diff options
author | Kaitao cheng <pilgrimtao@gmail.com> | 2018-11-06 11:34:54 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-11-27 06:00:52 -0500 |
commit | f88184bfee48d482dfff04cd1eed6906f289db4a (patch) | |
tree | 067c4c0799f3eaef45fcf8c559be96ba67b0c32e /drivers/base/core.c | |
parent | 03c0a9208bb10821e5e3f1c81e6218df32524311 (diff) |
driver core: Replace simple_strto{l,ul} by kstrtou{l,ul}
The simple_strto{l,ul} are deprecated, use kstrtou{l,ul} instead.
Signed-off-by: Kaitao cheng <pilgrimtao@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/base/core.c')
-rw-r--r-- | drivers/base/core.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/drivers/base/core.c b/drivers/base/core.c index 04bbcd779e11..ed145fbfeddf 100644 --- a/drivers/base/core.c +++ b/drivers/base/core.c | |||
@@ -794,10 +794,12 @@ ssize_t device_store_ulong(struct device *dev, | |||
794 | const char *buf, size_t size) | 794 | const char *buf, size_t size) |
795 | { | 795 | { |
796 | struct dev_ext_attribute *ea = to_ext_attr(attr); | 796 | struct dev_ext_attribute *ea = to_ext_attr(attr); |
797 | char *end; | 797 | int ret; |
798 | unsigned long new = simple_strtoul(buf, &end, 0); | 798 | unsigned long new; |
799 | if (end == buf) | 799 | |
800 | return -EINVAL; | 800 | ret = kstrtoul(buf, 0, &new); |
801 | if (ret) | ||
802 | return ret; | ||
801 | *(unsigned long *)(ea->var) = new; | 803 | *(unsigned long *)(ea->var) = new; |
802 | /* Always return full write size even if we didn't consume all */ | 804 | /* Always return full write size even if we didn't consume all */ |
803 | return size; | 805 | return size; |
@@ -818,9 +820,14 @@ ssize_t device_store_int(struct device *dev, | |||
818 | const char *buf, size_t size) | 820 | const char *buf, size_t size) |
819 | { | 821 | { |
820 | struct dev_ext_attribute *ea = to_ext_attr(attr); | 822 | struct dev_ext_attribute *ea = to_ext_attr(attr); |
821 | char *end; | 823 | int ret; |
822 | long new = simple_strtol(buf, &end, 0); | 824 | long new; |
823 | if (end == buf || new > INT_MAX || new < INT_MIN) | 825 | |
826 | ret = kstrtol(buf, 0, &new); | ||
827 | if (ret) | ||
828 | return ret; | ||
829 | |||
830 | if (new > INT_MAX || new < INT_MIN) | ||
824 | return -EINVAL; | 831 | return -EINVAL; |
825 | *(int *)(ea->var) = new; | 832 | *(int *)(ea->var) = new; |
826 | /* Always return full write size even if we didn't consume all */ | 833 | /* Always return full write size even if we didn't consume all */ |