Skip to content

Commit 99bf7c2

Browse files
Dan Carpentergroeck
authored andcommitted
hwmon: (ltc2991) re-order conditions to fix off by one bug
LTC2991_T_INT_CH_NR is 4. The st->temp_en[] array has LTC2991_MAX_CHANNEL (4) elements. Thus if "channel" is equal to LTC2991_T_INT_CH_NR then we have read one element beyond the end of the array. Flip the conditions around so that we check if "channel" is valid before using it as an array index. Fixes: 2b9ea42 ("hwmon: Add driver for ltc2991") Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Link: https://lore.kernel.org/r/Zoa9Y_UMY4_ROfhF@stanley.mountain Signed-off-by: Guenter Roeck <linux@roeck-us.net>
1 parent cd228e7 commit 99bf7c2

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

drivers/hwmon/ltc2991.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -225,8 +225,8 @@ static umode_t ltc2991_is_visible(const void *data,
225225
case hwmon_temp:
226226
switch (attr) {
227227
case hwmon_temp_input:
228-
if (st->temp_en[channel] ||
229-
channel == LTC2991_T_INT_CH_NR)
228+
if (channel == LTC2991_T_INT_CH_NR ||
229+
st->temp_en[channel])
230230
return 0444;
231231
break;
232232
}

0 commit comments

Comments
 (0)