On Wed, Jul 17, 2013 at 03:26:14PM +0300, Dan Carpenter wrote: > We cleaned up this code to use ARRAY_SIZE() instead of just the number > 4. The problem is that data->reg_temp[] has 5 elements and we actually > wanted ARRAY_SIZE(data->temp) which has 4 elements. > > Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> > Hi Dan, good catch, except that the array size of data->temp[] should be 5, not 4. So the real culprit is commit 7cbbd6a (Add support for critical low/high temperature limits on NCT6106) which increased the size of reg_temp but not the size of temp. Do you want to send me a patch fixing that, or should I take care of it ? Thanks, Guenter > diff --git a/drivers/hwmon/nct6775.c b/drivers/hwmon/nct6775.c > index f0941d7..52b6a92 100644 > --- a/drivers/hwmon/nct6775.c > +++ b/drivers/hwmon/nct6775.c > @@ -1451,7 +1451,7 @@ static struct nct6775_data *nct6775_update_device(struct device *dev) > for (i = 0; i < NUM_TEMP; i++) { > if (!(data->have_temp & (1 << i))) > continue; > - for (j = 0; j < ARRAY_SIZE(data->reg_temp); j++) { > + for (j = 0; j < ARRAY_SIZE(data->temp); j++) { > if (data->reg_temp[j][i]) > data->temp[j][i] > = nct6775_read_temp(data, > @@ -3974,7 +3974,7 @@ static int nct6775_resume(struct device *dev) > if (!(data->have_temp & (1 << i))) > continue; > > - for (j = 1; j < ARRAY_SIZE(data->reg_temp); j++) > + for (j = 1; j < ARRAY_SIZE(data->temp); j++) > if (data->reg_temp[j][i]) > nct6775_write_temp(data, data->reg_temp[j][i], > data->temp[j][i]); > _______________________________________________ lm-sensors mailing list lm-sensors@xxxxxxxxxxxxxx http://lists.lm-sensors.org/mailman/listinfo/lm-sensors