cpufreqd start but the socket doesn't appear in its place, all cpufreqd operations are not workable: $ cpufreqd-get No cpufreqd socket found According to /proc/cpuinfo, the CPU frequency is fixed to 1.60GHz when I doing some CPU intensive works, but it should be set to 2.20GHz in 'performance' governor. (cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor report 'performance') Another problem: bug: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=495655 arises after I update sys-apps/lm_sensors-3.1.2 and sys-fs/udev-149, below messages are shown in /var/log/message each time when cpufreqd start: Jul 4 23:49:37 wn cpufreqd: get_class_device_attribute: couldn't open /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0/energy_full (No such file or directory) Jul 4 23:49:37 wn cpufreqd: get_class_device_attribute: couldn't open /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT0/energy_now (No such file or directory) Reproducible: Always Steps to Reproduce:
Sorry, I forget to provide my platform. kernel configuration is attached. ---------------------------- cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz stepping : 10 cpu MHz : 1600.000 cache size : 4096 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm ida tpr_shadow vnmi flexpriority bogomips : 4387.10 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 1 vendor_id : GenuineIntel cpu family : 6 model : 15 model name : Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz stepping : 10 cpu MHz : 1600.000 cache size : 4096 KB physical id : 0 siblings : 2 core id : 1 cpu cores : 2 apicid : 1 initial apicid : 1 fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 10 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm ida tpr_shadow vnmi flexpriority bogomips : 4387.72 clflush size : 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: ------------------------ --------------------------- lsmod: ... cpufreq_ondemand 7782 0 cpufreq_conservative 5528 0 cpufreq_userspace 2327 0 cpufreq_powersave 786 0 acpi_cpufreq 7348 0 ... battery 7931 0 thermal 11231 0 ... processor 34655 3 acpi_cpufreq ... ------------------------------------- ------------------------------ uname -a: Linux xx.xx.xx 2.6.32-gentoo-r7 #7 SMP PREEMPT Sat May 15 21:06:59 CST 2010 i686 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz GenuineIntel GNU/Linux -----------------------------
Created attachment 237455 [details] my kernel configuraion
Ok, I just checked, you should have done everything right. What does `cpufreq-info` say? My Thinkpad R61 doesn't step higher that 1,6 (max 2.0) w/o battery inserted at boot time. Please assure that acpi_cpufreq is loaded via /etc/conf.d/modules before `/etc/init.d/cpufrequtils start` is run at bootup. Michael
(In reply to comment #3) > Ok, > I just checked, you should have done everything right. What does `cpufreq-info` > say? My Thinkpad R61 doesn't step higher that 1,6 (max 2.0) w/o battery > inserted at boot time. > > Please assure that acpi_cpufreq is loaded via /etc/conf.d/modules before > `/etc/init.d/cpufrequtils start` is run at bootup. > > Michael > 'cpufreq-info' report is listed below. I also check my rc configuration. cpufrequtils doesn't exist in my runlevel. However the CPU frequency still fixed at 1.6GHz after I start cpufrequtils. cpufrequtils 005: cpufreq-info (C) Dominik Brodowski 2004-2006 Report errors and bugs to cpufreq@vger.kernel.org, please. analyzing CPU 0: driver: acpi-cpufreq CPUs which need to switch frequency at the same time: 0 hardware limits: 800 MHz - 2.20 GHz available frequency steps: 2.20 GHz, 2.20 GHz, 1.60 GHz, 1.20 GHz, 800 MHz available cpufreq governors: ondemand, conservative, userspace, powersave, performance current policy: frequency should be within 1.60 GHz and 1.60 GHz. The governor "performance" may decide which speed to use within this range. current CPU frequency is 1.60 GHz. cpufreq stats: 2.20 GHz:0.00%, 2.20 GHz:0.00%, 1.60 GHz:0.00%, 1.20 GHz:0.00%, 800 MHz:0.00% (118) analyzing CPU 1: driver: acpi-cpufreq CPUs which need to switch frequency at the same time: 1 hardware limits: 800 MHz - 2.20 GHz available frequency steps: 2.20 GHz, 2.20 GHz, 1.60 GHz, 1.20 GHz, 800 MHz available cpufreq governors: ondemand, conservative, userspace, powersave, performance current policy: frequency should be within 1.60 GHz and 1.60 GHz. The governor "performance" may decide which speed to use within this range. current CPU frequency is 1.60 GHz. cpufreq stats: 2.20 GHz:0.00%, 2.20 GHz:0.00%, 1.60 GHz:0.00%, 1.20 GHz:0.00%, 800 MHz:0.00% (118)
Ok, looks like an issue with your upper bound for the scaling frequency. There's a hardware limit and a software limit which determines the range of operation of every governor. Can you please check `cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq` it should report `1600000` `cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies` it should report `2200000 <some values> 1600000 <some values> 800000` And `echo -n <highest value of available freq> > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq` should set it to this value. Recheck wih `cat ...max_freq` and repeat i for the others cpus. `cpufreq-set --max .... --cpu 0` and `cpufreq-set --max .... --cpu 1` should do the same. `cpufreq-info` should report this new software-limit then. Does it work?
(In reply to comment #5) > Ok, > looks like an issue with your upper bound for the scaling frequency. > There's a hardware limit and a software limit which determines the range of > operation of every governor. > > Can you please check > > `cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq` > it should report `1600000` > > `cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies` > it should report `2200000 <some values> 1600000 <some values> 800000` > > And `echo -n <highest value of available freq> > > /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq` should set it to this > value. > Recheck wih `cat ...max_freq` and repeat i for the others cpus. > > `cpufreq-set --max .... --cpu 0` and `cpufreq-set --max .... --cpu 1` should do > the same. > `cpufreq-info` should report this new software-limit then. > > Does it work? > My hardware support 2.2GHz speed. I tested the above sysfs files and they all report that my CPU support 2201000 frequency. Even /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq report 2201000. I have removed cpufreqd and cpufrequtils from rc list. Now my processor works at its highest speed, but never scale down when idle. (I select CPU_FREQ_DEFAULT_GOV_PERFORMANCE when compiling my kernel) I haven't check cpufreq-set. cpufreq-info now report: current policy: frequency should be within 800 MHz and 2.20 GHz. The governor "performance" may decide which speed to use within this range. Notice: I REMOVE cpufreqd and lm-sensors related scripts from my rc list, only stop them changes nothing.
Ok, so your hardware does react to the settings. (You can switch the governor by setting `cpufreq-set --governor ondemand --cpu 0` and `... --cpu 1`). I'll assigning it to the maintainers of cpufreqd since i have little knowledge of the config files of cpufreqd. Bye, Michael
(In reply to comment #7) > Ok, so your hardware does react to the settings. > (You can switch the governor by setting `cpufreq-set --governor ondemand --cpu > 0` and `... --cpu 1`). > > I'll assigning it to the maintainers of cpufreqd since i have little knowledge > of the config files of cpufreqd. > > Bye, Michael I should have this option set (there's no cpufreqd.conf in my system currently because of one-year updates). I still remember that this problem arises after I do a `emerge --update --deep world'. I never changed any file in /etc.
(In reply to comment #7) > Ok, so your hardware does react to the settings. > (You can switch the governor by setting `cpufreq-set --governor ondemand > --cpu 0` and `... --cpu 1`). > > I'll assigning it to the maintainers of cpufreqd since i have little > knowledge of the config files of cpufreqd. > > Bye, Michael Running cpufreq-set --governor ondemand over your CPUs should get scaling working... does it work?