On Tuesday 17 February 2009 13:17:54 Roel Kluin wrote: > I think this was intended? please review. This one's been there from the beginning. The change looks right to me. (i * count) account the previous successes, add either zero or x depending on the kind of read failure (timeout/short read vs other I/O error). I'm not entirely sure why i must be >0 for accounting the short read. Nothing calling abituguru3_read_increment_offset() checks for anything other than complete success. Every caller passes count=1, and offset_count>1, so both the new code and the old could never return a full count (offset_count*count) when an error has occured (old returns either 0 or x, x=count). Ergo, the change can't cause any regressions. Acked-by: Alistair John Strachan <alistair at devzero.co.uk> Jean, are you happy to take this? > --------------------------->8-------------8<------------------------------ > Add missing parentheses > > Signed-off-by: Roel Kluin <roel.kluin at gmail.com> > --- > diff --git a/drivers/hwmon/abituguru3.c b/drivers/hwmon/abituguru3.c > index e52b388..fd98685 100644 > --- a/drivers/hwmon/abituguru3.c > +++ b/drivers/hwmon/abituguru3.c > @@ -761,7 +761,7 @@ static int abituguru3_read_increment_offset(struct > abituguru3_data *data, for (i = 0; i < offset_count; i++) > if ((x = abituguru3_read(data, bank, offset + i, count, > buf + i * count)) != count) > - return i * count + (i && (x < 0)) ? 0 : x; > + return i * count + ((i && (x < 0)) ? 0 : x); > > return i * count; > } -- Cheers, Alistair.