Zwei Patches des polnischen Entwicklers Rafael J. Wysocki eröffnen die Möglichkeit, Suspend und Hibernation im laufenden Betrieb auf Fehler zu testen.
Der erste Patch von Rafael J. Wysocki eröffnet die Möglichkeit Suspend-Code (Suspend to disk) zu testen, ohne wirklich in den Ruhezustand wechseln zu müssen. Der Entwickler will damit Treiber-Problemen auf die Spur kommen. Der zweite Patch modifiziert den derzeitigen Quellcode der Hibernation-Funktion (Suspend to RAM) um das selbe zu erreichen. Nach Ansicht Wysockis funktioniert das besser als die derzeitigen Test-Modes, da sein Code auch die globalen Methoden von ACPI testen könne.
Die Test-Möglichkeiten führen ein neues Attribut “/sys/power/pm_test_level” ein, das die Nummern 1 bis 5 akzeptiert. Jeder dieser Werte simuliert ein unterschiedliches Level des Suspend- oder Hibernation-Codes. Wysocki erklärt die einzelnen Werte wie folgt. Die 5 testet das Einfrieren der Prozesse. Die 4 zeigt was passiert, wenn die Geräte zusätzlich in den Ruhezustand versetzt werden. Neben den ruhenden Prozessen und Geräten zeigt die 3, wie die globalen Methoden der Plattform reagieren. Nonboot CPUs schließt die 2 ein. Den vollständigen Ruhezustand simuliert die 1.
Der Entwickler ergänzt: “Wird ein Gerät in den Ruhezustand versetzt, führt das Suspend-System seine ganz normalen Funktionen bis zu dem Punkt aus, den das Test-System anzeigt. Dann wartet es 5 Sekunden und führt alle notwendigen Schritte aus, um das ganze System wieder in vollfunktionsfähigen Zustand zurückzuholen.” Soll das Textsystem nicht genutzt werden, kann “pm_test_level” auf 0 gesetzt werden. Mit einem dritten Patch fügt Wysocki Informationen über seine Testsysteme zur Dokumentation hinzu.


