After upgrading my linux box to kernel 3.0 I noticed a different management of coretemp module while till kernel 2.6.39.x (and all previous) , everything was ok Try to explain better This is my CPU vendor_id : GenuineIntel cpu family : 6 model : 23 model name : Intel(R) Core(TM)2 Quad CPU Q9400 @ 2.66GHz stepping : 10 - coretemp.ko module is loaded correctly - lm-sensor ver 3.3.1 works well report correct info as usual coretemp-isa-0000 Adapter: ISA adapter Core 0: +42.0°C (high = +72.0°C, crit = +100.0°C) Core 1: +42.0°C (high = +72.0°C, crit = +100.0°C) Core 2: +43.0°C (high = +72.0°C, crit = +100.0°C) Core 3: +46.0°C (high = +72.0°C, crit = +100.0°C) but some other apps like conky 1.8.1 reports this : Conky: can't open '/sys/bus/platform/devices/coretemp.0/temp1_input': No such file or directory after a little investigation I saw some changes in the content of /sys/bus/platform/devices/coretemp* this is the output with a 2.6.39.x kernel total 0 15 drwxr-xr-x 2 root root 0 Jul 28 2011 ./ 13 drwxr-xr-x 4 root root 0 Jul 28 2011 ../ 14412 lrwxrwxrwx 1 root root 0 Jul 28 19:53 coretemp.0 -> ../../../devices/platform/coretemp.0 14431 lrwxrwxrwx 1 root root 0 Jul 28 19:53 coretemp.1 -> ../../../devices/platform/coretemp.1 14450 lrwxrwxrwx 1 root root 0 Jul 28 19:53 coretemp.2 -> ../../../devices/platform/coretemp.2 14469 lrwxrwxrwx 1 root root 0 Jul 28 19:53 coretemp.3 -> ../../../devices/platform/coretemp.3 in each dir I had the variables for any single core starting from 1 to 4 e.g. for coretemp.0 the content is: ... temp1_crit ... temp1_crit_alarm ... temp1_input ... temp1_label ... temp1_max while on linux 3.0 i have only: 14431 lrwxrwxrwx 1 root root 0 Jul 29 07:53 /sys/bus/platform/devices/coretemp.0 -> ../../../devices/platform/coretemp.0/ and the content of this dir is this : 14438 drwxr-xr-x 3 root root 0 Jul 29 07:53 hwmon/ 14430 -r--r--r-- 1 root root 4.0K Jul 29 07:54 modalias 14437 -r--r--r-- 1 root root 4.0K Jul 29 07:54 name 14432 lrwxrwxrwx 1 root root 0 Jul 29 07:53 subsystem -> ../../../bus/platform/ 14449 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp2_crit 14446 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp2_crit_alarm 14448 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp2_input 14445 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp2_label 14447 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp2_max 14454 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp3_crit 14451 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp3_crit_alarm 14453 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp3_input 14450 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp3_label 14452 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp3_max 14459 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp4_crit 14456 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp4_crit_alarm 14458 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp4_input 14455 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp4_label 14457 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp4_max 14898 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp5_crit 14895 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp5_crit_alarm 14897 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp5_input 14460 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp5_label 14896 -r--r--r-- 1 root root 4.0K Jul 29 07:54 temp5_max 14429 -rw-r--r-- 1 root root 4.0K Jul 29 07:53 uevent as you can see all variables are in the same dir and the core count start from 2 to 5 instead of 1 to 4 as should be (I guess) Does anybody have an idea about this change? thanks in advance Andrea
Regarding all temps in one dir : it's a change implemented with Kernel 3.0 commit 199e0de7f5df31a4fc485d4aaaf8a07718252ace Author: Durgadoss R <durgadoss.r@intel.com> Date: Fri May 20 01:29:35 2011 +0530 hwmon: (coretemp) Merge pkgtemp with coretemp This patch merges the pkgtemp with coretemp driver. The sysfs interfaces for all cores in the same pkg are shown under one directory, in hwmon. It also supports CONFIG_HOTPLUG_CPU. So, the sysfs interfaces are created when each core comes online and are removed when it goes offline. sorry if I didn't check before in the changelog Now I would like to now if the core count is correct or not Andrea
Data is correct and as expected. temp1 is the package temperature which is not supported for your CPU. Applications should not depend on sequential sensor attribute numbering. Guenter
This is a bug in conky or any other application affected by this change, so please report it there. The coretemp driver still implements a compliant hwmon interface which will make any reasonably recent version of libsensors happy. Not only monitoring applications shouldn't assume fixed or sequential numbering of sensor inputs, as Guenter correctly wrote in comment #2, but they shouldn't assume _anything_ at all, and they shouldn't have to: proper monitoring applications should simply build on top of libsensors.