-
Notifications
You must be signed in to change notification settings - Fork 63
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Over four entries in levels causes abnormally high temperature reading #124
Comments
Hi, this behavior looks very weird to me, and I find it almost impossible to believe it's really related to the number of Could you please try to reproduce the behavior once more and then post here the output of the following command:
|
I'm seeing a very similar behavior in my setup using thinkfan 1.2 (1.2.1-3, from Debian Unstable) on my ThinkPad W500, where specifying more than 3 indices of My desired sensors:
- tpacpi: /proc/acpi/ibm/thermal
indices: [0, 1, 2, 6, 8, 9]
fans:
- tpacpi: /proc/acpi/ibm/fan
levels:
- [0, 0, 22]
- [1, 21, 33]
- [2, 32, 38]
- [4, 37, 44]
- [6, 43, 55]
- [7, 54, 60]
- ["level disengaged", 59, 32767] Results:
Those are some... interesting temperatures, alright. However, if I change the
Similar results with strange temperature values can be also seen when using larger subsets of the sensor list ( I'm happy to do more testing or provide any more info to help get this sorted out. |
I've done a little more testing, and the issue I'm seeing doesn't seem to be related to the number of indices specified, but the indices themselves. For example, sensors:
- tpacpi: /proc/acpi/ibm/thermal
indices: [2, 8] will yield:
72C is not an outrageous value, especially for a Core2Duo T9900 with an undersized heatsink, but no sensor is reporting that value. In the meantime, I discovered that the updated sensor support in thinkfan 1.0+ is quite nice, and I was able to get more or less what I wanted using sensors:
- hwmon: /sys/class/hwmon
name: coretemp
indices: [2, 3]
- tpacpi: /proc/acpi/ibm/thermal
indices: [0, 1, 2] So, I was able to solve my issue another way, but there's almost definitely a bug in how the legacy sensor is being read/interpreted. |
Yup, looks like there might be some uninitialized memory or a buffer overflow happening here. However I'm currently quite busy, so I can't make promises when I'll find the time to investigate properly. If anyone wants to help, try reproducing the issue on a |
Should be fixed in the current master now, specifically by 6b9e348. Please test and let me know whether the issue is resolved for you. |
The issue appears to be fixed indeed. My sensors:
- tpacpi: /proc/acpi/ibm/thermal
indices: [0, 1, 2, 4, 6]
fans:
- tpacpi: /proc/acpi/ibm/fan
levels:
- [0, 0, 22]
- [1, 21, 33]
- [2, 32, 38]
- [4, 37, 44]
- [6, 43, 55]
- [7, 54, 60]
- ["level disengaged", 59, 32767] Output while compiling a small project:
It's working exactly how I expect/want it to. Thank you for providing the fix and for notifying us. |
Seem to have found a bug of sorts, at least on my setup (thinkfan 1.2.1, Lenovo X201), if there are more than four entries in thinkfan.conf it causes an abnormally high temperature reading triggering the highest fan level.
This is my .conf
Gives an output something like this
However if levels was something like
thinkfan -n
outputs this, with a weird temperature reading that causes the highest fan level to trigger..The text was updated successfully, but these errors were encountered: