Re: [patch] hwmon: prevent some divide by zeros in FAN_TO_REG()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 5 Dec 2013 16:13:32 +0300, Dan Carpenter wrote:
> On Thu, Dec 05, 2013 at 01:06:13PM +0100, Jean Delvare wrote:
> > Hi Dan,
> > 
> > On Thu, 5 Dec 2013 13:58:45 +0300, Dan Carpenter wrote:
> > > It's not enough to just test if "rpm" is zero, the "rpm * div" operation
> > > could overflow and that could also lead to a divide by zero.
> > 
> > If you believe an overflow can happen (and indeed it can) then this
> > isn't the way to handle it. Avoiding a divide by zero is certainly nice
> > but properly handling the other overflow cases too would be better.
> > 
> > In practice, this means for the vt8231 driver:
> > 
> > 	if (rpm == 0 || rpm > 1310720)
> > 		return 0;
> > 
> > and for the lm78 and sis5595 drivers:
> > 
> > 	if (rpm <= 0)
> > 		return 255;
> > 	if (rpm > 1350000)
> > 		return 0;
> 
> For these two are you sure the return value shouldn't be 1?

Hmm, yes, you're right. That won't make a big difference in practice
but returning 1 would be better.

Thanks,
-- 
Jean Delvare

_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors




[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux