Commit 95924388 authored by Andy Shevchenko's avatar Andy Shevchenko

platform/x86: intel_pmc_core: Respect error code of kstrtou32_from_user()

kstrtou32_from_user() may return different error codes on certain
circumstances. Respect all possible values.

While here, move it out of the lock: there is no data access that lock guards.
Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
parent e883cafd
...@@ -629,15 +629,15 @@ static ssize_t pmc_core_ltr_ignore_write(struct file *file, const char __user ...@@ -629,15 +629,15 @@ static ssize_t pmc_core_ltr_ignore_write(struct file *file, const char __user
struct pmc_dev *pmcdev = &pmc; struct pmc_dev *pmcdev = &pmc;
const struct pmc_reg_map *map = pmcdev->map; const struct pmc_reg_map *map = pmcdev->map;
u32 val, buf_size, fd; u32 val, buf_size, fd;
int err = 0; int err;
buf_size = count < 64 ? count : 64; buf_size = count < 64 ? count : 64;
mutex_lock(&pmcdev->lock);
if (kstrtou32_from_user(userbuf, buf_size, 10, &val)) { err = kstrtou32_from_user(userbuf, buf_size, 10, &val);
err = -EFAULT; if (err)
goto out_unlock; return err;
}
mutex_lock(&pmcdev->lock);
if (val > map->ltr_ignore_max) { if (val > map->ltr_ignore_max) {
err = -EINVAL; err = -EINVAL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment