• Jean Delvare's avatar
    hwmon: (w83627ehf) Get rid of smatch warnings · 45633fb3
    Jean Delvare authored
    The smatch static code analyzer complains:
    
    drivers/hwmon/w83627ehf.c:911 w83627ehf_update_device() error: buffer overflow 'W83627EHF_REG_TEMP_OFFSET' 3 <= 8
    drivers/hwmon/w83627ehf.c:909 w83627ehf_update_device() error: buffer overflow 'data->temp_offset' 3 <= 8
    drivers/hwmon/w83627ehf.c:2672 w83627ehf_resume() error: buffer overflow 'W83627EHF_REG_TEMP_OFFSET' 3 <= 8
    drivers/hwmon/w83627ehf.c:2673 w83627ehf_resume() error: buffer overflow 'data->temp_offset' 3 <= 8
    
    A deeper analysis of the code shows that these are false positives, as
    only the lower 3 bits of data->have_temp_offset can be set so the
    write is never attempted with i >= 3. However this shows that the code
    isn't very robust and future changes could easily introduce a buffer
    overflow. So let's add a safety check to prevent that and make smatch
    happy.
    Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
    Cc: Peter Huewe <PeterHuewe@gmx.de>
    Reviewed-by: default avatarGuenter Roeck <linux@roeck-us.net>
    45633fb3
w83627ehf.c 85.6 KB