diff options
| author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2018-05-29 09:33:49 -0400 |
|---|---|---|
| committer | Marcel Holtmann <marcel@holtmann.org> | 2018-05-30 02:16:05 -0400 |
| commit | c2e7f5dee722a6f6337540b15000bed575c80793 (patch) | |
| tree | b5da6be65bd100f0fbcc1f10c1cc145ba64de07c /drivers/bluetooth | |
| parent | 3bf5e97d7bbd175248da02efca2b265d13fb6041 (diff) | |
Bluetooth: btmrvl: Re-use kstrtol_from_user()
Re-use kstrtol_from_user() instead of open coded variant.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Diffstat (limited to 'drivers/bluetooth')
| -rw-r--r-- | drivers/bluetooth/btmrvl_debugfs.c | 24 |
1 files changed, 3 insertions, 21 deletions
diff --git a/drivers/bluetooth/btmrvl_debugfs.c b/drivers/bluetooth/btmrvl_debugfs.c index 023d35e3c7a7..c4867576be00 100644 --- a/drivers/bluetooth/btmrvl_debugfs.c +++ b/drivers/bluetooth/btmrvl_debugfs.c | |||
| @@ -35,15 +35,9 @@ static ssize_t btmrvl_hscfgcmd_write(struct file *file, | |||
| 35 | const char __user *ubuf, size_t count, loff_t *ppos) | 35 | const char __user *ubuf, size_t count, loff_t *ppos) |
| 36 | { | 36 | { |
| 37 | struct btmrvl_private *priv = file->private_data; | 37 | struct btmrvl_private *priv = file->private_data; |
| 38 | char buf[16]; | ||
| 39 | long result, ret; | 38 | long result, ret; |
| 40 | 39 | ||
| 41 | memset(buf, 0, sizeof(buf)); | 40 | ret = kstrtol_from_user(ubuf, count, 10, &result); |
| 42 | |||
| 43 | if (copy_from_user(&buf, ubuf, min_t(size_t, sizeof(buf) - 1, count))) | ||
| 44 | return -EFAULT; | ||
| 45 | |||
| 46 | ret = kstrtol(buf, 10, &result); | ||
| 47 | if (ret) | 41 | if (ret) |
| 48 | return ret; | 42 | return ret; |
| 49 | 43 | ||
| @@ -81,15 +75,9 @@ static ssize_t btmrvl_pscmd_write(struct file *file, const char __user *ubuf, | |||
| 81 | size_t count, loff_t *ppos) | 75 | size_t count, loff_t *ppos) |
| 82 | { | 76 | { |
| 83 | struct btmrvl_private *priv = file->private_data; | 77 | struct btmrvl_private *priv = file->private_data; |
| 84 | char buf[16]; | ||
| 85 | long result, ret; | 78 | long result, ret; |
| 86 | 79 | ||
| 87 | memset(buf, 0, sizeof(buf)); | 80 | ret = kstrtol_from_user(ubuf, count, 10, &result); |
| 88 | |||
| 89 | if (copy_from_user(&buf, ubuf, min_t(size_t, sizeof(buf) - 1, count))) | ||
| 90 | return -EFAULT; | ||
| 91 | |||
| 92 | ret = kstrtol(buf, 10, &result); | ||
| 93 | if (ret) | 81 | if (ret) |
| 94 | return ret; | 82 | return ret; |
| 95 | 83 | ||
| @@ -127,15 +115,9 @@ static ssize_t btmrvl_hscmd_write(struct file *file, const char __user *ubuf, | |||
| 127 | size_t count, loff_t *ppos) | 115 | size_t count, loff_t *ppos) |
| 128 | { | 116 | { |
| 129 | struct btmrvl_private *priv = file->private_data; | 117 | struct btmrvl_private *priv = file->private_data; |
| 130 | char buf[16]; | ||
| 131 | long result, ret; | 118 | long result, ret; |
| 132 | 119 | ||
| 133 | memset(buf, 0, sizeof(buf)); | 120 | ret = kstrtol_from_user(ubuf, count, 10, &result); |
| 134 | |||
| 135 | if (copy_from_user(&buf, ubuf, min_t(size_t, sizeof(buf) - 1, count))) | ||
| 136 | return -EFAULT; | ||
| 137 | |||
| 138 | ret = kstrtol(buf, 10, &result); | ||
| 139 | if (ret) | 121 | if (ret) |
| 140 | return ret; | 122 | return ret; |
| 141 | 123 | ||
