Bug 28232 - powernow-k8 is being partially obsolete
Summary: powernow-k8 is being partially obsolete
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: cpufreq-simple (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: Mikhail Efremov
QA Contact: qa-sisyphus
URL: http://lkml.org/lkml/2012/9/4/42
Keywords:
Depends on:
Blocks:
 
Reported: 2012-12-19 17:05 MSK by Michael Shigorin
Modified: 2013-03-07 20:14 MSK (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Shigorin 2012-12-19 17:05:12 MSK
Судя по https://github.com/torvalds/linux/blob/master/drivers/cpufreq/powernow-k8.c, в текущем powernow-k8 выкинули поддержку новых AMD CPU, добавленную в acpi-cpufreq; соответственно придётся модифицировать тест -- в ядре проверяют наличие X86_FEATURE_HW_PSTATE, в /proc/cpuinfo на AMD C60 под 3.7.1-un-def-alt1 наблюдается " hwpstate " в строчке "power management".
Comment 1 Michael Shigorin 2013-02-12 14:55:14 MSK
На 3.7.7-std-def-alt1:

Feb 12 10:47:05 localhost.localdomain kernel: powernow-k8: this CPU is not supported anymore, using acpi-cpufreq instead.
Feb 12 10:47:05 localhost.localdomain cpufreq-simple[968]: Loading cpufreq module: [FAILED]

Видимо, надо перед обломом делать фолбэк на acpi-cpufreq.
Comment 2 Mikhail Efremov 2013-03-05 16:49:31 MSK
(В ответ на комментарий №1)
> Видимо, надо перед обломом делать фолбэк на acpi-cpufreq.

Это плохой вариант, т.к. по сути это будет хак в инит скрипте. Надо, чтобы detect-cpufreq-module сразу возвращал acpi-cpufreq. Но для этого надо точно знать как это определять.
Comment 3 Michael Shigorin 2013-03-05 17:02:14 MSK
Так в старых-то ядрах оно было в powernow-k8.  А в новых как раз переделывают.

BTW во время тестов на той же машинке под openSUSE 12.2 загружался сразу acpi-cpufreq, помнится.
Comment 4 led 2013-03-05 17:14:12 MSK
(В ответ на комментарий №2)
> Надо, чтобы
> detect-cpufreq-module сразу возвращал acpi-cpufreq. Но для этого надо точно
> знать как это определять.

По вот этому, очевидно:
alias x86cpu:vendor:*:family:*:model:*:feature:*00E8* acpi_cpufreq
alias x86cpu:vendor:*:family:*:model:*:feature:*0016* acpi_cpufreq
Comment 5 Michael Shigorin 2013-03-05 17:57:08 MSK
Да, так лучше:

C-60:
# modprobe -v $(cat /sys/devices/system/cpu/modalias)
insmod /lib/modules/3.7.9-std-def-alt1/kernel/arch/x86/kernel/microcode.ko 
insmod /lib/modules/3.7.9-std-def-alt1/kernel/drivers/cpufreq/acpi-cpufreq.ko 

i7:
# modprobe -v $(cat /sys/devices/system/cpu/modalias)
insmod /lib/modules/3.4.35-led-ws-alt1/kernel/arch/x86/kernel/microcode.ko 
insmod /lib/modules/3.4.35-led-ws-alt1/kernel/drivers/cpufreq/acpi-cpufreq.ko
Comment 6 Mikhail Efremov 2013-03-05 19:59:49 MSK
Хм, так может вообще переписать все это на использование udev для загрузки модулей? Если уже нет готовых правил. Раньше не было cpu/modalias, собственно из-за этого эти скрипты и делались.
Comment 7 Mikhail Efremov 2013-03-06 00:39:57 MSK
2mike: Проверь task #91999, пожалуйста.
Comment 8 Michael Shigorin 2013-03-07 20:00:16 MSK
Вспомнил, проверил, работает, отправляй.

BTW на 3.8.2 уже и powernow-k8 подрихтовали:

[   10.480461] acpi-cpufreq: overriding BIOS provided _PSD data
[   16.417665] powernow-k8: this CPU is not supported anymore, using acpi-cpufreq instead.
Comment 9 Repository Robot 2013-03-07 20:14:22 MSK
cpufreq-simple-0.2.0-alt1 -> sisyphus:

* Tue Mar 05 2013 Mikhail Efremov <sem@altlinux> 0.2.0-alt1
- Use cpu/modalias if possible (closes: #28232).
- Added systemd service file.
- Load powernow-k8 for AMD Bulldozer (21) and Llano (18) CPUs.