On Tue, Nov 02, 2004 at 12:05:14AM +0100, Markus Klingspor wrote:
Danke für die schnelle Antwort,
das habe ich inzw. auch gemacht, nachdem ich herausgefunden hatte, wo das ganze hing. Was mir noch nicht ganz klar ist, ist was in welcher Reihenfolge genau passiert und warum das ganze hängt.
bei ACPI ist es "ganz einfach": die events in "POWERSAVE_EVENT_GLOBAL_SUSPEND2RAM" werden der Reihe nach abgearbeitet, der letzte darin ist "do_suspend2ram", was den suspend macht. Nach dem resume werden alle events in "POWERSAVE_EVENT_GLOBAL_RESUME_SUSPEND2RAM" ausgeführt, danach ist hoffentlich alles wieder ganz. Für APM siehe unten.
Aus den Quellen von powersaved bin ich auf die Schnelle auch nicht ganz schlau geworden. Ich habe versucht den Aufruf von screen_saver vor prepare_... zu setzen. Der Effekt ist der gleiche. Es scheint, das irgendetwas bereits heruntergefahren ist, bevor die Skripte laufen.
Wer kennt sich mit powersaved genauer aus?
Ich, aber nicht mit APM :-) Wenn ich mich recht entsinne, sind bei APM manche Sachen im BIOS geregelt, das heisst anders als bei ACPI (wo es einfach einen event "knopf x gedrückt" gibt, auf den das Betriebssytem reagieren muss), wird beim drücken des sleep- buttons bei APM direkt eine BIOS aktion ausgelöst und der Kernel kann im besten Fall reagieren, aber nicht viel dagegen tun (wie gesagt, so habe ich das in Erinnerung, aber das kann auch falsch sein). Warum nun nur der screensaver fehlschlägt? Keine Ahnung. Du kannst ja mal "notify" eintragen und schauen, ob das auch hängt. Notify sollte nur ein Fenster aufpoppen und etwas rumpiepsen. Dummerweise habe ich praktisch keine Maschinen mehr, auf denen APM noch geht, darum kann ich es nicht so richtig testen. Aktuelle Hardware kann fast nur noch ACPI. -- Stefan Seyfried