Bug 9495

Summary: wrong cpufreq driver for Pentium M (Dothan)
Product: Sisyphus Reporter: Sergey Vlasov <vsu>
Component: udevAssignee: Alexey Shabalin <shaba>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: arseny, cetus, evg, imz, mike, shaba, shrek
Version: unstable   
Hardware: all   
OS: Linux   
Attachments:
Description Flags
Вывод cpuscan -v для ноутбука Sony Vaio VGN-TX1XRP none

Description Sergey Vlasov 2006-04-30 18:54:35 MSD
Имеется следующее железо (Dell Latitude D600):

ID              : 0
name            : Intel(R) Pentium(R) M processor 1.60GHz
vendor          : GenuineIntel
dbname          : Pentium M (Dothan)
family          : 6
model           : d
stepping        : 6
brandid         : 16
core            : B0
cpu MHz         : 1595.013
MHz(estimate)   : 1594.81
cache size      : 2048 KB
hwid            : 0C5D4DCA69779CC5
bogomips        : 3194.62
fpu             : yes
flags           : fpu vme de pse tsc msr mce cx8 sep mtrr pge mca cmov pat
clflush dts acpi mmx fxsr sse sse2 ss tm pbe est tm2
cpufreq         : yes
drivers         : acpi 

cpuid registers dump
 eax in    eax      ebx      ecx      edx
00000000 00000002 756e6547 6c65746e 49656e69
00000001 000006d6 00000816 00000180 afe9f9bf
00000002 02b3b001 000000f0 00000000 2c04307d

Extended cpuid 
 eax in    eax      ebx      ecx      edx
80000000 80000004 00000000 00000000 00000000
80000001 00000000 00000000 00000000 00000000
80000002 20202020 20202020 65746e49 2952286c
80000003 6e655020 6d756974 20295228 7270204d
80000004 7365636f 20726f73 30362e31 007a4847

Для этого процессора в hwdatabase есть запись:

GenuineIntel	6	d	6	Pentium M (Dothan)
+driver	acpi
+revision	B0

Однако, начиная с ядра 2.6.16, модуль acpi-cpufreq (который на самом деле
используется в 2.6.x вместо старого имени acpi) больше не работает на этой
машине. Причина в том, что в commit 05131ecc99ea9da7f45ba3058fe8a2c1d0ceeab8
изменили способ формирования параметра для метода _PDC - теперь ядро вызывает
этот метод только один раз для каждого процессора, причём на более ранней стадии
(существенно раньше загрузки драйверов cpufreq), и в любом случае сообщает ACPI
BIOS о поддержке Enhanced SpeedStep; если BIOS тоже поддерживает EST, метод _PCT
будет возвращать ресурсы типа FFixedHW, которые поддерживаются модулем
speedstep-centrino, но не поддерживаются модулем acpi-cpufreq.

Предлагается изменить список драйверов для этого типа процессора на
"speedstep-centrino acpi" (можно даже написать acpi-cpufreq, если не нужна
поддержка старого cpufreq для ядер 2.4.x). При этом в cpu.rc нужно пробовать
загружать все модули из списка, пока один из них не загрузится успешно (и,
видимо, с >/dev/null 2>&1). (Модуль speedstep-centrino может не загрузиться,
если BIOS по каким-то причинам проигнорирует наличие поддержки EST, заявленное в
параметре метода _PDC - в этом случае может сработать модуль acpi-cpufreq.)

Вероятно, аналогичное изменение следует произвести и для других моделей
процессоров, поддерживаемых модулем speedstep-centrino:


        [CPU_DOTHAN_A1] = { 6, 13, 1 },
GenuineIntel	6	d	1	Pentium M (Dothan)
+driver	acpi
+revision	A1

        [CPU_DOTHAN_A2] = { 6, 13, 2 },
/* сейчас отсутствует в hwdatabase */

        [CPU_MP4HT_D0]  = {15,  3, 4 },
GenuineIntel	f	3	4	Pentium 4 (Prescott)
+revision	D0

        [CPU_MP4HT_E0]  = {15,  4, 1 },
GenuineIntel	f	4	1	Pentium 4 (Foster)
+revision	E0
?cpufreq=yes	+driver	acpi

Впрочем, похоже, даже этот список неполон (если speedstep-centrino использует
информацию ACPI, модель процессора не проверяется по внутренним таблицам, так
что в принципе speedstep-centrino может работать и с более новыми процессорами).
Comment 1 Sergei Naumov 2006-06-14 23:51:25 MSD
Created attachment 1518 [details]
Вывод cpuscan -v для ноутбука Sony Vaio VGN-TX1XRP

Еще один пример некоректоной отработки при загрузке модуля acpi-cpufreq
Comment 2 Andrii Dobrovol`s`kii 2006-07-13 19:40:34 MSD
Ещё один пример. Для ноутбука Версия IQ Lider
cpuscan -v
/dev/cpu/0/msr: No such file or directory
ID              : 0
name            : Intel(R) Pentium(R) M processor 1.73GHz
vendor          : GenuineIntel
dbname          : Pentium M (Dothan)
family          : 6
model           : d
stepping        : 8
brandid         : 16
cpu MHz         : 800.000
MHz(estimate)   : 250.848
cache size      : 2048 KB
hwid            : 0C5E7CE978779CC5
bogomips        : 1598.24
fpu             : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx est tm2
cpufreq         : yes
drivers         : acpi

cpuid registers dump
 eax in    eax      ebx      ecx      edx
00000000 00000002 756e6547 6c65746e 49656e69
00000001 000006d8 00000816 00000180 afe9fbff
00000002 02b3b001 000000f0 00000000 2c04307d

Extended cpuid
 eax in    eax      ebx      ecx      edx
80000000 80000008 00000000 00000000 00000000
80000001 00000000 00000000 00000000 00100000
80000002 20202020 20202020 65746e49 2952286c
80000003 6e655020 6d756974 20295228 7270204d
80000004 7365636f 20726f73 33372e31 007a4847
80000005 00000000 00000000 00000000 00000000
80000006 00000000 00000000 08006040 00000000
80000007 00000000 00000000 00000000 00000000
80000008 00002020 00000000 00000000 00000000

speedstep-centrino на этом процессоре работает как нужно а acpi-cpufreq не грузится.
Comment 3 Jose 2006-09-14 14:03:51 MSD
Sisyphus 9 sep 2006
2.6.16-std26-up-alt9
udev_static-addon-0.1-alt1
udev-097-alt2

#/var/log/messages

Sep  9 21:55:36 jose-pc kernel: hw_random: RNG not detected
Sep  9 21:55:36 jose-pc kernel: ACPI: CPU0 (power states: C1[C1] C2[C2])
Sep  9 21:55:36 jose-pc kernel: ACPI: Processor [CPU1] (supports 8 throttling
states)
Sep  9 21:55:36 jose-pc cpu.rc: Error inserting
'/lib/modules/2.6.16-std26-up-alt9/kernel/arch/i386/kernel/cpu/cpufreq/acpi-
cpufreq.ko': -1 No such device
Sep  9 21:55:36 jose-pc cpu.rc: insmod:
Sep  9 21:55:36 jose-pc cpu.rc: insmod
/lib/modules/2.6.16-std26-up-alt9/kernel/arch/i386/kernel/cpu/cpufreq/acpi-cpufreq.ko
failed
Sep  9 21:55:37 jose-pc cpu.rc: insmod:
Sep  9 21:55:37 jose-pc cpu.rc: insmod acpi failed
Sep  9 21:55:37 jose-pc hotplug: Hotplug (cpu.rc) start: failed

[root@jose-pc log]# cpuscan -v
/dev/cpu/0/msr: No such file or directory
ID              : 0
name            : Intel(R) Pentium(R) M processor 1.73GHz
vendor          : GenuineIntel
dbname          : Pentium M (Dothan)
family          : 6
model           : d
stepping        : 8
brandid         : 16
cpu MHz         : 1729.286
MHz(estimate)   : 217.536
cache size      : 2048 KB
hwid            : 0C5E7CE978779CC5
bogomips        : 3465.06
fpu             : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx est tm2
cpufreq         : yes
drivers         : acpi

cpuid registers dump
 eax in    eax      ebx      ecx      edx
00000000 00000002 756e6547 6c65746e 49656e69
00000001 000006d8 00000816 00000180 afe9fbff
00000002 02b3b001 000000f0 00000000 2c04307d

Extended cpuid
 eax in    eax      ebx      ecx      edx
80000000 80000008 00000000 00000000 00000000
80000001 00000000 00000000 00000000 00100000
80000002 20202020 20202020 65746e49 2952286c
80000003 6e655020 6d756974 20295228 7270204d
80000004 7365636f 20726f73 33372e31 007a4847
80000005 00000000 00000000 00000000 00000000
80000006 00000000 00000000 08006040 00000000
80000007 00000000 00000000 00000000 00000000
80000008 00002020 00000000 00000000 00000000

Notebook Asus A6Vm
Comment 4 Alexey Voinov 2006-10-01 13:16:28 MSD
Не знаю, пригодится или нет, но вдруг пригодится.
Это Dell Inspiron 700m

ID              : 0
name            : Intel(R) Pentium(R) M processor 1.80GHz
vendor          : GenuineIntel
dbname          : Pentium M (Dothan)
family          : 6
model           : d
stepping        : 6
brandid         : 16
core            : B0
microcode       : 0000000000000017
cpu MHz         : 1794.416
MHz(estimate)   : 1794.18
cache size      : 2048 KB
hwid            : 0C5D432A87779CC5
bogomips        : 3563.52
fpu             : yes
flags           : fpu vme de pse tsc msr mce cx8 sep mtrr pge mca cmov pat
clflush dts acpi mmx fxsr sse sse2 ss tm pbe est tm2
cpufreq         : yes
drivers         : acpi 

cpuid registers dump
 eax in    eax      ebx      ecx      edx
00000000 00000002 756e6547 6c65746e 49656e69
00000001 000006d6 00000816 00000180 afe9f9bf
00000002 02b3b001 000000f0 00000000 2c04307d

Extended cpuid 
 eax in    eax      ebx      ecx      edx
80000000 80000004 00000000 00000000 00000000
80000001 00000000 00000000 00000000 00000000
80000002 20202020 20202020 65746e49 2952286c
80000003 6e655020 6d756974 20295228 7270204d
80000004 7365636f 20726f73 30382e31 007a4847
Comment 5 Dmitry 2006-12-20 19:39:58 MSK
те же проблемы, это HP nx8220

ID              : 0
name            : Intel(R) Pentium(R) M processor 2.00GHz
vendor          : GenuineIntel
dbname          : Pentium M (Dothan)
family          : 6
model           : d
stepping        : 8
brandid         : 16
cpu MHz         : 2000.000
MHz(estimate)   : 695.81
cache size      : 2048 KB
hwid            : 0C5D4BAA0C47AFC5
bogomips        : 3992.45
fpu             : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat clflush dts acpi mmx fxsr sse sse2 ss tm pbe nx up est tm2
cpufreq         : yes
drivers         : acpi

cpuid registers dump
 eax in    eax      ebx      ecx      edx
00000000 00000002 756e6547 6c65746e 49656e69
00000001 000006d8 00000816 00000180 afe9fbff
00000002 02b3b001 000000f0 00000000 2c04307d

Extended cpuid
 eax in    eax      ebx      ecx      edx
80000000 80000008 00000000 00000000 00000000
80000001 00000000 00000000 00000000 00100000
80000002 20202020 20202020 65746e49 2952286c
80000003 6e655020 6d756974 20295228 7270204d
80000004 7365636f 20726f73 30302e32 007a4847
80000005 00000000 00000000 00000000 00000000
80000006 00000000 00000000 08006040 00000000
80000007 00000000 00000000 00000000 00000000
80000008 00002020 00000000 00000000 00000000
Comment 6 Michael Shigorin 2007-06-06 15:04:07 MSD
А это ещё к hwdatabase?
Comment 7 Sergey Vlasov 2008-02-09 15:22:12 MSK
Теперь это вообще непонятно к чему - часть проблемы рассосётся сама собой после
переезда на 2.6.24 (где поддержка большинства упомянутых здесь процессоров вновь
переехала в acpi-cpufreq; возможно, даже придётся менять часть записей, которые
ранее показывали на speedstep-centrino, или просто грузить все модули, пока один
из них не загрузится успешно).
Comment 8 Michael Shigorin 2008-02-09 16:44:35 MSK
См. тж. #14370; так что, эта бага имеет смысл или уже нет/другой?
Comment 9 Michael Shigorin 2008-02-15 20:17:21 MSK
Боюсь, придётся перевесить на Стаса.
Comment 10 inger@altlinux.org 2008-02-17 18:47:45 MSK
чем тут может помочь стас?
Comment 11 Michael Shigorin 2008-02-18 19:37:02 MSK
-> udev
Comment 12 Michael Shigorin 2013-11-13 13:00:22 MSK
(В ответ на комментарий №7)
> часть проблемы рассосётся сама собой после переезда на 2.6.24 (где поддержка
> большинства упомянутых здесь процессоров вновь переехала в acpi-cpufreq
Это уже давно произошло, но у меня теперь нет Pentium M под рукой для проверки.

Валер, можешь при удобном случае на X40 погрузить acpi-cpufreq и speedstep-centrino? (в std-def его наблюдаю, в led-ws уже нет)
Comment 13 Alexey Shabalin 2017-12-16 02:13:05 MSK
закрою, т.к. не актуально.