[3.13.y.z extended stable] Patch "hwmon: (lm78) Fix overflow problems seen when writing large temperature limits" has been added to staging queue
Kamal Mostafa
kamal at canonical.com
Mon Sep 15 22:07:50 UTC 2014
This is a note to let you know that I have just added a patch titled
hwmon: (lm78) Fix overflow problems seen when writing large temperature limits
to the linux-3.13.y-queue branch of the 3.13.y.z extended stable tree
which can be found at:
http://kernel.ubuntu.com/git?p=ubuntu/linux.git;a=shortlog;h=refs/heads/linux-3.13.y-queue
This patch is scheduled to be released in version 3.13.11.7.
If you, or anyone else, feels it should not be added to this tree, please
reply to this email.
For more information about the 3.13.y.z tree, see
https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable
Thanks.
-Kamal
------
>From b0589f23f7772871659202401f95e8b387b440c6 Mon Sep 17 00:00:00 2001
From: Guenter Roeck <linux at roeck-us.net>
Date: Tue, 29 Jul 2014 20:48:59 -0700
Subject: hwmon: (lm78) Fix overflow problems seen when writing large
temperature limits
commit 1074d683a51f1aded3562add9ef313e75d557327 upstream.
On platforms with sizeof(int) < sizeof(long), writing a temperature
limit larger than MAXINT will result in unpredictable limit values
written to the chip. Avoid auto-conversion from long to int to fix
the problem.
Cc: Axel Lin <axel.lin at ingics.com>
Reviewed-by: Axel Lin <axel.lin at ingics.com>
Signed-off-by: Guenter Roeck <linux at roeck-us.net>
Signed-off-by: Kamal Mostafa <kamal at canonical.com>
---
drivers/hwmon/lm78.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/hwmon/lm78.c b/drivers/hwmon/lm78.c
index a2f3b4a..b879427 100644
--- a/drivers/hwmon/lm78.c
+++ b/drivers/hwmon/lm78.c
@@ -108,7 +108,7 @@ static inline int FAN_FROM_REG(u8 val, int div)
* TEMP: mC (-128C to +127C)
* REG: 1C/bit, two's complement
*/
-static inline s8 TEMP_TO_REG(int val)
+static inline s8 TEMP_TO_REG(long val)
{
int nval = clamp_val(val, -128000, 127000) ;
return nval < 0 ? (nval - 500) / 1000 : (nval + 500) / 1000;
--
1.9.1
More information about the kernel-team
mailing list