[lm-sensors] [PATCH] hwmon/dme1737: fix divide-by-0
Juerg Haefliger
juergh at gmail.com
Wed Jan 30 00:57:52 CET 2008
Hi Jean,
On Jan 28, 2008 1:21 AM, Jean Delvare <khali at linux-fr.org> wrote:
> Hi Juerg,
>
>
> On Sun, 27 Jan 2008 16:39:46 -0800, Juerg Haefliger wrote:
> > This patch fixes a possible divide-by-0 and a minor bug in the
> > FAN_FROM_REG macro (in TPC mode).
> >
> > Signed-off-by: Juerg Haefliger <juergh at gmail.com>
> >
> > Index: linux/drivers/hwmon/dme1737.c
> > ===================================================================
> > --- linux.orig/drivers/hwmon/dme1737.c 2008-01-24 09:04:24.000000000 -0800
> > +++ linux/drivers/hwmon/dme1737.c 2008-01-27 16:33:47.000000000 -0800
> > @@ -279,14 +279,21 @@
> > /* Fan input RPM */
> > static inline int FAN_FROM_REG(int reg, int tpc)
> > {
> > - return (reg == 0 || reg == 0xffff) ? 0 :
> > - (tpc == 0) ? 90000 * 60 / reg : tpc * reg;
> > + if (tpc) {
> > + return tpc * reg;
> > + } else {
> > + return (reg == 0 || reg == 0xffff) ? 0 : 90000 * 60 / reg;
> > + }
> > }
> >
> > static inline int FAN_TO_REG(int val, int tpc)
> > {
> > - return SENSORS_LIMIT((tpc == 0) ? 90000 * 60 / val : val / tpc,
> > - 0, 0xffff);
> > + if (tpc) {
> > + return SENSORS_LIMIT(val / tpc, 0, 0xffff);
> > + } else {
> > + return (val <= 0) ? 0xffff :
> > + SENSORS_LIMIT(90000 * 60 / val, 0, 0xfffe);
> > + }
> > }
> >
> > /* Fan TPC (tach pulse count)
>
> Looks good to me this time.
>
> Acked-by: Jean Delvare <khali at linux-fr.org>
Thanks for the review.
> PS: Would you have some time to review one of my pending patches? For
> example:
> http://lists.lm-sensors.org/pipermail/lm-sensors/2007-December/022143.html
Riku just beat me to it:
http://lists.lm-sensors.org/pipermail/lm-sensors/2008-January/022362.html
Anything else you need reviewed?
...juerg
> --
> Jean Delvare
>
More information about the lm-sensors
mailing list