On 11/22/21 8:01 AM, Pali Rohár wrote:
On Saturday 20 November 2021 18:03:19 Armin Wolf wrote:
The only purpose of i8k_ioctl() is to call i8k_ioctl_unlocked()
with i8k_mutex held. Judging from the hwmon code, this mutex
only needs to be held when setting the fan speed/mode.
Really? I think that there is no difference between setting and getting
fan speed/mode. At least I do not see why 'set' needs mutex and 'get' do
not need it. Some more explanation is needed...
I8K_SET_FAN sets the fan speed and returns the current status. Without
locking, the returned status may not match or be associated with the previous
set operation.
Maybe that doesn't matter, and the synchronization is not needed. If so,
you can probably remove the locking entirely.
Guenter