On Sun, 8 Jul 2012 09:50:38 -0700, Guenter Roeck wrote: > Expression with two integer variables is calculated as integer before it is > converted to u64. This may result in an integer overflow. Fix by declaring > trip point variables as s64 instead of int. > > This patch addresses Coverity #200596: Unintentional integer overflow. > > Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx> > --- > v2: Fix by declaring trip point variables as s64 instead of multiplying with > 1000ULL. This is more consistent with the rest of the code. > > drivers/hwmon/acpi_power_meter.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/hwmon/acpi_power_meter.c b/drivers/hwmon/acpi_power_meter.c > index 9a0821f1..5363da5 100644 > --- a/drivers/hwmon/acpi_power_meter.c > +++ b/drivers/hwmon/acpi_power_meter.c > @@ -101,7 +101,7 @@ struct acpi_power_meter_resource { > unsigned long sensors_last_updated; > struct sensor_device_attribute sensors[NUM_SENSORS]; > int num_sensors; > - int trip[2]; > + s64 trip[2]; > int num_domain_devices; > struct acpi_device **domain_devices; > struct kobject *holders_dir; > @@ -308,8 +308,6 @@ static ssize_t set_trip(struct device *dev, struct device_attribute *devattr, > return res; > > temp = DIV_ROUND_CLOSEST(temp, 1000); > - if (temp > INT_MAX) > - return -EINVAL; > > mutex_lock(&resource->lock); > resource->trip[attr->index - 7] = temp; Acked-by: Jean Delvare <khali@xxxxxxxxxxxx> -- Jean Delvare _______________________________________________ lm-sensors mailing list lm-sensors@xxxxxxxxxxxxxx http://lists.lm-sensors.org/mailman/listinfo/lm-sensors