Commit 2565fb05 authored by Axel Lin's avatar Axel Lin Committed by Guenter Roeck

hwmon: (gpio-fan) Prevent overflow problem when writing large limits

On platforms with sizeof(int) < sizeof(unsigned long), writing a rpm value
larger than MAXINT will result in unpredictable limit values written to the
chip. Avoid auto-conversion from unsigned long to int to fix the problem.
Signed-off-by: default avatarAxel Lin <axel.lin@ingics.com>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 18d03f3c
...@@ -173,7 +173,7 @@ static int get_fan_speed_index(struct gpio_fan_data *fan_data) ...@@ -173,7 +173,7 @@ static int get_fan_speed_index(struct gpio_fan_data *fan_data)
return -ENODEV; return -ENODEV;
} }
static int rpm_to_speed_index(struct gpio_fan_data *fan_data, int rpm) static int rpm_to_speed_index(struct gpio_fan_data *fan_data, unsigned long rpm)
{ {
struct gpio_fan_speed *speed = fan_data->speed; struct gpio_fan_speed *speed = fan_data->speed;
int i; int i;
......
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