On 9/21/22 16:31, Li Zhong wrote:
Hello, My static analysis tool reports a possible bug in the adm9240 driver in Linux v6.0: drivers/hwmon/adm9240.c: adm9240_read() adm9240_fan_read() --> Line 509 adm9240_write_fan_div() adm9240_write_fan_div() says 'callers must hold data->update_lock'. However, it seems like the context does not hold the lock it requires. So it may cause data race when setting new fan div. I am not quite sure whether this is a real bug. Any feedback would be appreciated!
You are correct, the code in adm9240_fan_read() should acquire the mutex before calling adm9240_write_fan_div() and while manipulating data->fan_div[channel]. Guenter