hwmon: (it87) Features mask must be 32 bit wide
authorGuenter Roeck <linux@roeck-us.net>
Wed, 10 Aug 2016 05:09:19 +0000 (22:09 -0700)
committerGuenter Roeck <linux@roeck-us.net>
Fri, 12 Aug 2016 01:35:47 +0000 (18:35 -0700)
Coverity reports:

result_independent_of_operands: data->features & (65536UL /* 1UL << 16 */)
is always 0 regardless of the values of its operands. This occurs as the
logical operand of if.

data->features needs to be 32 bit wide since there are more than 16 features.

Fixes: cc18da79d9b7 ("hwmon: (it87) Support up to 6 temperature sensors ... ");
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
drivers/hwmon/it87.c

index 730d840..d0203a1 100644 (file)
@@ -491,7 +491,7 @@ struct it87_sio_data {
 struct it87_data {
        const struct attribute_group *groups[7];
        enum chips type;
-       u16 features;
+       u32 features;
        u8 peci_mask;
        u8 old_peci_mask;