cpufreq speedstep geht nach reboot nicht
Ich habe auf meinem Gericom Ego (Pentium M / Centrino / ati radeon mobile 9700) SuSE 9.3 installiert. Nach der Installation funktioniert das Speedstepping einwandfrei. Verwende ich den Xorg readeon Treiber für X11, dann kann ich das Notebook ab und zu auch komplett neu starten, d. h. z.B. bis zum KDE Desktop. Allerdings musste ich als Bootparameter noacpi übergeben, dennoch läuft acpid und powersaved meistens. Nun habe ich zusätzlich den ATI Treiber installiert. Jetzt funktioniert Speedstepping nur noch sporadisch, in 4 von 5 Versuchen hängt sich das Notebook beim Booten auf. Erst wenn ich cpufreq ausschalte, kann ich booten, dann aber immer. Interessant ist nun, setze ich die Xorg.conf auf den Xorg radeon Treiber zurück, dann zeigt sich dasselbe Verhalten wie mit dem ATI Treiber. Und das, obwohl es vorher noch funktioniert hat (statistisch nur 1 von 10 Versuchen fehlgeschlagen). Wie kann es sein, dass cpufreq nach einer Neuinstallation einwandfrei läuft, nach einem Reboot aber meistens ausfällt? Nach einer Neuinstallation kann ich auch den ATI Treiber installieren und habe funktionierendes Speedstepping. Reboote ich aber vorher oder nachdem ich den Treiber installiert habe, dann fällt Speedstepping zuverlässig aus. Warum passiert das bei einenm Reboot? Gruß, Detlef
Unter Windows habe ich noch nähere Informationen zu dem System ermittelt: Es ist ein Pentium M 1.5 Ghz (Banias) mit Intel Centrino. Einem Logfile Eintrag konnte ich noch entnehmen, dass es bei aktiviertem speedstep_centrino Modul sporadisch zu Kernel Oops kommt. Hier habe ich einen davon aus /var/log/messages Apr 30 16:02:04 linux kernel: ACPI: AC Adapter [ADP1] (on-line) Apr 30 16:02:04 linux kernel: ACPI: Battery Slot [BAT1] (battery present) Apr 30 16:02:05 linux kernel: ACPI: Power Button (FF) [PWRF] Apr 30 16:02:05 linux kernel: ACPI: Lid Switch [LID0] Apr 30 16:02:05 linux kernel: ACPI: Sleep Button (CM) [SLPB] Apr 30 16:02:05 linux kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for Generic Apr 30 16:02:05 linux kernel: usbcore: registered new driver usbserial_generic Apr 30 16:02:05 linux kernel: usbcore: registered new driver usbserial Apr 30 16:02:05 linux kernel: drivers/usb/serial/usb-serial.c: USB Serial Driver core v2.0 Apr 30 16:02:05 linux kernel: ACPI: CPU0 (power states: C1[C2] C2[C3]) Apr 30 16:02:05 linux kernel: ACPI: Processor [CPU1] (supports 8 throttling states) Apr 30 16:02:05 linux kernel: ACPI-0400: *** Warning: Invalid active threshold [0] Apr 30 16:02:05 linux kernel: ACPI: Thermal Zone [THRM] (48 C) Apr 30 16:02:06 linux kernel: ACPI-0294: *** Error: Looking up [ACST] in namespace, AE_ALREADY_EXISTS Apr 30 16:02:06 linux kernel: ACPI-0601: *** Warning: During name lookup/catalog, AE_ALREADY_EXISTS Apr 30 16:02:06 linux kernel: ACPI-1140: *** Error: Method execution failed [\_PR_.CPU1._PDC] (Node dffcef40), AE_ALREADY_EXISTS Apr 30 16:02:06 linux rcpowersaved: enter 'speedstep_centrino' into POWERSAVE_CPUFREQD_MODULE in /etc/sysconfig/powersave/cpufreq. Apr 30 16:02:06 linux rcpowersaved: this will speed up starting powersaved and avoid unnecessary warnings in syslog. Apr 30 16:02:06 linux kernel: bootsplash: status on console 0 changed to on Apr 30 16:02:07 linux kernel: Unable to handle kernel NULL pointer dereference at virtual address 00000010 Apr 30 16:02:07 linux kernel: printing eip: Apr 30 16:02:07 linux kernel: c0204f21 Apr 30 16:02:07 linux kernel: *pde = 00000000 Apr 30 16:02:07 linux kernel: Oops: 0000 [#1] Apr 30 16:02:07 linux kernel: Modules linked in: cpufreq_userspace speedstep_centrino freq_table thermal processor fan usbserial button battery ac nvram snd_pcm_oss snd_m ixer_oss af_packet pcmcia edd evdev joydev sg st sd_mod sr_mod scsi_mod ipt_state ip6t_REJECT ipw2200 ipt_REJECT 8139too firmware_class ieee80211 mii ieee80211_crypt yent a_socket rsrc_nonstatic pcmcia_core iptable_mangle iptable_filter ip6table_mangle ip_nat_ftp iptable_nat ip_conntrack_ftp ip_conntrack ip_tables snd_intel8x0 snd_ac97_cod ec snd_pcm snd_timer snd soundcore uhci_hcd ehci_hcd snd_page_alloc usbcore intel_agp agpgart hw_random ip6table_filter ip6_tables ipv6 parport_pc lp parport video1394 oh ci1394 raw1394 ieee1394 capability nls_utf8 ntfs nls_iso8859_1 nls_cp437 vfat fat dm_mod reiserfs ide_cd cdrom ide_disk piix ide_core Apr 30 16:02:07 linux kernel: CPU: 0 Apr 30 16:02:07 linux kernel: EIP: 0060:[<c0204f21>] Tainted: G U VLI Apr 30 16:02:07 linux kernel: EFLAGS: 00010246 (2.6.11.4-20a-default) Apr 30 16:02:07 linux kernel: EIP is at acpi_ps_has_completed_scope+0x6/0x1d Apr 30 16:02:07 linux kernel: eax: dc67bdec ebx: 00000000 ecx: 00000000 edx: 00000009 Apr 30 16:02:07 linux kernel: esi: dc67bc00 edi: dc67bdec ebp: 00000000 esp: dbeefe64 Apr 30 16:02:07 linux kernel: ds: 007b es: 007b ss: 0068 Apr 30 16:02:07 linux kernel: Process powersaved (pid: 7004, threadinfo=dbeee000 task=db955580) Apr 30 16:02:07 linux kernel: Stack: dd0789e0 c02049cd e080a398 00000000 00000000 00000000 dc67bc00 dc67bc00 Apr 30 16:02:07 linux kernel: dcb91980 00000000 c0204b0a 00000000 00000000 dc67bc00 dbeefefc dc4e20c0 Apr 30 16:02:07 linux kernel: c02051ee dffbcec0 dbeefefc dbeefefc dcb91c40 e14e3421 c02026bf dbeefefc Apr 30 16:02:07 linux kernel: Call Trace: Apr 30 16:02:08 linux kernel: [<c02049cd>] acpi_ps_parse_loop+0x7a6/0x896 Apr 30 16:02:08 linux kernel: [<c0204b0a>] acpi_ps_parse_aml+0x4d/0x1ab Apr 30 16:02:08 linux kernel: [<c02051ee>] acpi_psx_execute+0xd6/0x198 Apr 30 16:02:08 linux kernel: [<c02026bf>] acpi_ns_execute_control_method+0x5d/0x69 Apr 30 16:02:08 linux kernel: [<c0202646>] acpi_ns_evaluate_by_handle+0x71/0x8d Apr 30 16:02:08 linux SuSEfirewall2: Warning: ip6tables does not support state matching. Extended IPv6 support disabled. Apr 30 16:02:08 linux kernel: [<c0202551>] acpi_ns_evaluate_relative+0xad/0xc7 Diese Probleme treten nur auf, wenn ich speedstep verwenden will. Hat irgendjemand eine Idee, was ich tun könnte (außer speedstep abschalten)? Detlef
On Tue, May 03, 2005 at 01:15:46AM +0200, Detlef Grittner wrote:
Apr 30 16:02:06 linux rcpowersaved: enter 'speedstep_centrino' into POWERSAVE_CPUFREQD_MODULE in /etc/sysconfig/powersave/cpufreq.
Mach' das mal, aber trage nicht "speedstap-centrino" sondern "acpi_cpufreq" dort ein. Danach rebooten.
Diese Probleme treten nur auf, wenn ich speedstep verwenden will. Hat irgendjemand eine Idee, was ich tun könnte (außer speedstep abschalten)?
siehe oben. Schicke mal deine DSDT an Thomas Renninger <trenn@suse.de>, der sagt uns dann, ob mein Verdacht richtig war :-) Um das zu tun, mache "cat /proc/acpi/dsdt > /tmp/dsdt; gzip -9 /tmp/dsdt" und hänge dann /tmp/dsdt.gz an die Mail an. -- Stefan Seyfried
Stefan Seyfried wrote:
On Tue, May 03, 2005 at 01:15:46AM +0200, Detlef Grittner wrote:
Apr 30 16:02:06 linux rcpowersaved: enter 'speedstep_centrino' into POWERSAVE_CPUFREQD_MODULE in /etc/sysconfig/powersave/cpufreq.
Mach' das mal, aber trage nicht "speedstap-centrino" sondern "acpi_cpufreq" dort ein. Danach rebooten.
Damit funktioniert es nun.
Diese Probleme treten nur auf, wenn ich speedstep verwenden will. Hat irgendjemand eine Idee, was ich tun könnte (außer speedstep abschalten)?
siehe oben. Schicke mal deine DSDT an Thomas Renninger <trenn@suse.de>, der sagt uns dann, ob mein Verdacht richtig war :-) Um das zu tun, mache "cat /proc/acpi/dsdt > /tmp/dsdt; gzip -9 /tmp/dsdt" und hänge dann /tmp/dsdt.gz an die Mail an.
Und im Anhang schicke ich noch die angeforderte Datei. Ich hoffe, es ist die richtige. Was genau passiert hier eigentlich und wie kommt man darauf, dass man ein anderes cpufreq Modul laden muss? Gruß, Detlef
On Thu, May 05, 2005 at 02:05:32PM +0200, Detlef Grittner wrote:
Und im Anhang schicke ich noch die angeforderte Datei. Ich hoffe, es ist die richtige.
Danke
Was genau passiert hier eigentlich und wie kommt man darauf, dass man
Wenn ich das richtig verstanden habe, ist es eine Mischung aus DSDT-Bug und Kernel-Bug bzw. Fehlinterpretation: - in der DSDT ist mehr als eine CPU definiert - das speedstep-centrino-Modul initialisiert alle in der DSDT definierten CPUs, auch die nicht vorhandenen => blöd. Das acpi-cpufreq-Modul macht das nicht und funktioniert glücklicherweise auch mit deiner Hardware (wenn auch nicht ganz so gut, aber besser als nix ist es auf jeden Fall).
ein anderes cpufreq Modul laden muss?
Gute Frage. Ich habe genau diesen Fehler schon gesehen, deshalb wußte ich das. Scheinbar passiert das auf fast allen neueren Medions; da Gericom in der selben Ecke wie Medion liegt, vermutete ich einfach mal, daß es dasselbe ist. Nachdem ich mir jetzt deine DSDT angeschaut habe, bin ich mir allerdings nicht mehr sicher, ob das derselbe Fehler ist, dazu wird Thomas etwas sagen können. Soviel ich weiß, wird dieser Fehler auch in einem update-Kernel gefixt werden (die nicht vorhandenen CPUs werden dann nicht mehr initialisiert ;-) aber ich weiß nicht, ob und wann der rauskommt. Wenn mal ein kernel-update kommt, kannst du es ja nochmal mit "speedstep-centrino" versuchen. -- Stefan Seyfried
participants (2)
-
Detlef Grittner
-
Stefan Seyfried