mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-16 16:54:20 +08:00
hwmon: (acpi_power_meter) Cleanup and optimizations
An unsigned value can not be smaller than 0. Remove the check for it. Use DIV_ROUND_CLOSEST for divide operations converting milli-degrees C into degrees C. Limit maximum accepted trip point temperature to INT_MAX. This patch fixes Coverity #115214: Unsigned compared against 0 Signed-off-by: Guenter Roeck <linux@roeck-us.net> Acked-by: Jean Delvare <khali@linux-fr.org>
This commit is contained in:
parent
27f8b13555
commit
27c4db3996
@ -237,7 +237,7 @@ static ssize_t set_cap(struct device *dev, struct device_attribute *devattr,
|
||||
if (res)
|
||||
return res;
|
||||
|
||||
temp /= 1000;
|
||||
temp = DIV_ROUND_CLOSEST(temp, 1000);
|
||||
if (temp > resource->caps.max_cap || temp < resource->caps.min_cap)
|
||||
return -EINVAL;
|
||||
arg0.integer.value = temp;
|
||||
@ -307,8 +307,8 @@ static ssize_t set_trip(struct device *dev, struct device_attribute *devattr,
|
||||
if (res)
|
||||
return res;
|
||||
|
||||
temp /= 1000;
|
||||
if (temp < 0)
|
||||
temp = DIV_ROUND_CLOSEST(temp, 1000);
|
||||
if (temp > INT_MAX)
|
||||
return -EINVAL;
|
||||
|
||||
mutex_lock(&resource->lock);
|
||||
|
Loading…
Reference in New Issue
Block a user