Bug 29324

Summary: Греется процессор ноутбука на ядре 3.11.х
Product: Sisyphus Reporter: barssc <barssc>
Component: kernel-image-un-defAssignee: Vitaly Chikunov <vt>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: aen, aris, kernelbot, led, vt
Version: unstable   
Hardware: all   
OS: Linux   
URL: http://forum.altlinux.org/index.php?topic=30120.msg213519#msg213519

Description barssc 2013-09-05 16:49:22 MSK
После обновления ядра до версии 3.10.10-std-def, выросла температура процессора ноутбука примерно на 10-15 градусов из-за чего стал шуметь вентилятор, на старом ядре 3.8.13-std-def температура падает до нормальных 47-49 градусов. Дистрибутив ALTLinux KDesktop 7 обновленный до р7. Ноутбук ASUS X53SV, процессор i5-2410 (со встроенным видео intel hd3000), видеокарта nvidia GT-540M (optimus). bbswitch работает нормально и внешнюю nvidia отключает.

cat /proc/acpi/bbswitch 
0000:01:00.0 OFF
Comment 1 barssc 2013-09-12 16:55:10 MSK
Проблема решается добавлением параметра ядра intel_pstate=disable, после чего включается старый проверенный механизм управления частотой процессора cpufreq. Нельзя ли собирать ядро с выключенным модулем intel_pstate?
Comment 2 barssc 2013-10-19 16:29:49 MSK
Продолжаем разбираться в ошибке. Система ALTLinux KDesktop 7 x64. Ядро 3.11.5-un-def-alt1
Поддерживаемые режимы performance powersave
Рабочий режим как не крути performance
Используемый драйвер intel_pstate
И частота процессора держится на максимуме
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x1b
cpu MHz		: 2875.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.83
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		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x1b
cpu MHz		: 2691.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 1
cpu cores	: 2
apicid		: 2
initial apicid	: 2
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.83
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:

processor	: 2
vendor_id	: GenuineIntel
cpu family	: 6
model		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x1b
cpu MHz		: 2875.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 1
initial apicid	: 1
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.83
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:

processor	: 3
vendor_id	: GenuineIntel
cpu family	: 6
model		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x1b
cpu MHz		: 2691.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 1
cpu cores	: 2
apicid		: 3
initial apicid	: 3
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.83
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:

На этом же ноутбуке запускалась fedora 19 x64 Kdesktop ядро,
драйвер, поддерживаемые режимы одинаковые, но в простое ноутбука режим powersave и частота снижена до 1018, соответсвенно процессор не греется, напрашивается вывод, что где то поломка у нас в дистрибутиве. 
Вывод из fedora
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x28
cpu MHz		: 851.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 0
initial apicid	: 0
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.70
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		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x28
cpu MHz		: 874.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 1
cpu cores	: 2
apicid		: 2
initial apicid	: 2
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.70
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:

processor	: 2
vendor_id	: GenuineIntel
cpu family	: 6
model		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x28
cpu MHz		: 1633.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 0
cpu cores	: 2
apicid		: 1
initial apicid	: 1
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.70
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:

processor	: 3
vendor_id	: GenuineIntel
cpu family	: 6
model		: 42
model name	: Intel(R) Core(TM) i5-2410M CPU @ 2.30GHz
stepping	: 7
microcode	: 0x28
cpu MHz		: 1357.000
cache size	: 3072 KB
physical id	: 0
siblings	: 4
core id		: 1
cpu cores	: 2
apicid		: 3
initial apicid	: 3
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
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 syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid
bogomips	: 4589.70
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 48 bits virtual
power management:
Comment 3 AEN 2013-10-19 16:40:20 MSK
Попробуйте, пожалуйста, текущее std-def из p7.
Comment 4 barssc 2013-10-19 16:45:09 MSK
На std-def работает старый драйвер acpi_cpufreq, с ним все работает хорошо, но от intel_pstate нам не уйти и рано или поздно данный драйвер будет использоваться по умолчанию, поэтому считаю что разбираться надо уже сейчас, т.к. на федоре и убунту данный драйвер функционирует как и положено, а у нас нет.
Comment 5 barssc 2013-10-19 16:46:55 MSK
По умолчанию для процессоров интел семейства i*
Comment 6 AEN 2013-10-19 16:47:53 MSK
На Сизиф.
Comment 7 barssc 2013-10-19 16:54:22 MSK
В таком случае необходимо на все версии ядер вешать багу, а возможно проблема вообще не в ядре
Comment 8 AEN 2013-10-19 16:58:40 MSK
(В ответ на комментарий №7)
> В таком случае необходимо на все версии ядер вешать багу, а возможно проблема
> вообще не в ядре

Вы же сами сказали, что с 3.10  все нормально. Нет?
Версии std-def и un-def в p7 и sysiphus сейчас идентичны, потому надо смотреть проблему в sysiphus, а потом править в резервном ядре p7, если дело в нем.
Comment 9 barssc 2013-10-19 17:07:43 MSK
Действительно, извиняюсь не посмотрел.
Comment 10 Michael Shigorin 2013-10-19 23:24:19 MSK
На i7 поведение с pstate тоже изменилось и субъективно его можно описать так: машинка в среднем горячее, но живёт не меньше.  Да, я тоже понимаю, что звучит как бред.
Comment 11 Yuri N. Sedunov 2013-10-19 23:51:06 MSK
(In reply to comment #10)
> На i7 поведение с pstate тоже изменилось и субъективно его можно описать так:
> машинка в среднем горячее.

В среднем не только горячее, но и шумнее, поэтому я этому  intel_pstate сделал disable.
Comment 12 led 2013-10-20 05:02:53 MSK
"The driver implements an internal governor..."

IMHO если вам не нравится дефолтный governor (в данном случае - железный governor от Intel), логично использовать альтернативный (если он есть), который вас больше устраивает. Вроде всегда так было - в чём тогда проблема?

Например, я использую всё время "ondemand", но это ведь не повод для того, чтобы выбрасывать из ядра при сборке остальные?

И ещё: у intel_pstate есть разные параметры для тюнинга (правда, странно, что тюнить приходится через debugfs) - можно ними "поиграться" (и по результатам "игр", возможно, изменить дефолтные значения в модуле).
Comment 13 Michael Shigorin 2013-10-27 21:33:59 MSK
(В ответ на комментарий №12)
> И ещё: у intel_pstate есть разные параметры для тюнинга (правда, странно, что
> тюнить приходится через debugfs) - можно ними "поиграться" (и по результатам
> "игр", возможно, изменить дефолтные значения в модуле).
А куда смотреть?  У меня он задирает одно из ядер i7-3517U на 2.5GHz, если верить powertop-2.4-alt1.  При том, что штатная частота -- 1.9, турбо -- 2.1.
Comment 14 Michael Shigorin 2013-10-27 21:42:03 MSK
PS: судя по коду, no_turbo включается при чём-либо кроме performance в качестве cpufreq governor; сделал так:

# for i in /sys/devices/system/cpu/cpu?/cpufreq/scaling_governor; do echo powersave > $i; done

-- пиковая частота ушла где-то к 2--2.2GHz.  Посмотрим.
Comment 15 Michael Shigorin 2014-10-09 19:13:34 MSK
echo 1 > /sys/devices/system/cpu/intel_pstate/no_turbo

Возможно, стоит запатчить drivers/cpufreq/intel_pstate.c с тем, чтоб по умолчанию было .no_turbo = 0 -- эффект действительно неприятный, до апстрима попробую донести.
Comment 16 Anton Farygin 2017-06-18 21:12:15 MSK
В апстриме это уже более-менее поправили.

и помогает отключение turbo_mode