Opensuse 12.2: systemd shutdown führt bei 3ware 9650 Raid zu Datenverlust

Ich betreibe auf mehreren Arbeitsplatz-PCs Opensuse in unterschiedlichen Versionen. Diese PCs sind mit LSI/3ware Raid-Controllern 9650 und jeweils einem Raid10-Array ausgestattet.

Der 3ware-Controller bietet mehrere Einstellungen für den Write Cache unter der Option “StorSave” an (Performance, Balance, Protection). Der Controller ist auf einem der Systeme nicht batteriegepuffert. Dennoch gab es dort unter Opensuse 11.X und 12.1 (mit und ohne systemd) nie Probleme mit Shutdowns und dem erforderlichen Abschluss aller offenen Dateioperationen.

Bei regulären Shutdowns mit PowerOff kam es nie (!) zu Datenverlusten oder Inkonsistenzen des Filesystems - und zwar völlig unabhängig von der StorSave-Einstellung. D.h., auch die Einstellung “Performance” (max. Datenpufferung im Controller-Speicher) führte bei regulären Shutdowns nie zu Problemen.

Dies hat sich seit Opensuse 12.2. und seiner aktuellen “systemd”-Variante gravierend geändert: Shutdowns mit Poweroff führen bei der StorSave-Einstellung “Performance” regelmäßig zu Datenverlusten und zu resultierenden massiven Inkonsistenzen im Root-Filesystem.

Problematisch finde ich dabei auch folgendes:

Systemd erkennt beim nächsten Bootvorgang die Dateisystem-Inkonsistenz zwar und startet fsck. Der automatische fsck-Prozess scheitert aber ggf… “systemd” fährt das System dann trotz inkonsistentem Filesystem gnadenlos hoch. Ohne eine Blick in die Logs bekommt man davon ggf. nicht mal was mit, wenn Plymouth aktiv ist.

Normale Shutdowns mit PowerOff sind unter Opensuse 12.2 mit Systemd nur noch mit der 3ware-StorSave-Einstellung “Balance” oder “Protection” sicher durchführbar. Dies bedeutet allerdings Performance-Einschränkungen.

Ist dieses Problem bekannt? Ich finde, dass das gelöst werden sollte. Das reguläre Herunterfahren eines Opensuse 12.2-Systems (mit systemd) sollte auch bei Einsatz von 3ware-Controllern nicht zu Problemen führen. Was es in der Vergangenheit - speziell vor systemd - auch nie tat.

Hallo,

gibt es hier Neuigkeiten zu dem Thema? Oder andere Erfahrungen?

Ich betreibe momentan einen Server mit Opensuse 11.2 und dem selben Controller (3Ware 9650).
Ich wollte eigentlich mein System auf Opensuse 12.2 Upgraden.
Für mich wäre sehr wichtig noch andere Meinungen/Erfahrungen zu dem Thema zu hören.

Ich habe mal bei 3Ware nach der neusten Firmware und Treibern geschaut (Release 9.5.5.1). Vielleicht kommt es ja aus der Ecke.
Es gibt eine aktuelle Firmware und leider noch keine fertig kompilierten Treiber (3w-9xxx.ko) zu der Opensuse 12.2 mit dem 3er Kernel.
Und es wird direkt drauf hingewiesen, das wenn man die neuste Firmware drauf hat auch den neusten Trieber verwenden muss.
Vielleicht löst die Kombination aus Firmware und Treiber ja das Problem?

Wer hat schon NEUE Treiber für den 3er Kernel kompiliert? Ich kann doch nicht der erste sein, der hier die neuste Treiberversion benötigt.
Zumal die neuen Features der 3Ware 9650 erst mit neuster Firmware und Treiber funktionieren sollen.
Da wäre zum Beispiel die Unterstützung von 4TB Festplatten.

@moenchmeyer: Gibt es bei dir bereits neue Erfahrungen?
Vielleicht können wir ja mal kontakt aufnehmen.

Gruß
Jojo

Hallo,

Ich habe vor kurzem auf Opensuse 12.3 umgestellt (Kernel 3.7.10) . Leider aber noch nicht getestet, ob sich der von SuSE mit ausgelieferte 3ware-Treiber nun anders verhält. Das mit dem Testen ist ja leider auch nicht so einfach - da der Schaden (korruptes Filesystem) im Ernstfall nämlich ziemlich beträchtlich ist, traue ich mich nicht mehr, diese Tests auf den produktiven Installationen vorzunehmen. Ich muss daher erstmal eine weitere Installation durchführen.

Kompiliert habe ich den Treiber aus dem 3ware Codeset 9.5.5.1 selbst noch nicht für diesen Kernel. Ich denke aber, das ist nicht nötig, da die letzte Versionsnummer des Driver -Quellcodes im 9.5.5.1 Codeset sich auf den Treiber 2.26.02.014 bezieht. Exakt diese Version wird mir von 3DM2 unter OS 12.3 auch angezeigt. Also hat Suse den Treiber aus dem 9.5.5.1 Set auch kompiliert.

Firmwaremäßig ist v4.10.00.027 der Stand von 9.5.5.1. Den habe ich nicht installiert. Bin auf dem Stand FE9X 4.10.00.007. Lohnt sich ggf. tatsächlich, hier mal ein Update vorzunehmen. Melde mich wieder, wenn ich das gemacht habe.

Im Moment laufen alle nicht batteriegepufferten 3ware-Controller halt im reduzierten Modus “Balanced”, was den Schreibcache angeht. Damit gab es auch unter OS 12.3 bislang keine Probleme.

Jojo - wenn du also auf Nummer sicher gehen willst - nimm doch erstmal diese Einstellung.

Mit 4 TB habe ich ganz gute Erfahrungen gemacht - nämlich in der Form 4x2TB-Platten als Raid 10-Verbund. Das ging schon unter Opensuse 11.4. Das damals angelegte System ist auf dem Stand von Opensuse 12.2. Die Opensuse 11.4-Installationsroutinen hatten die Plattendimension richtig erkannt und auch den richtigen Partitionmanager [GPT] gstartet. Je nach bereits vorhandener Installation wird aber ggf. ein Hybrid MBR angelegt - da muss man ein wenig aufpassen. Bei mir war das so - die Konsequenzen habe ich erst später verstanden. Bei einem Hybrid MBR werden nämlich zwar Platten oder Disk Arrays > 2TB wie erwartet verwaltet, aber du kannst wohl leider nur aus den ersten 3 Partitionen booten. Ich nehme an, dass das bei einer frischen Installation anders läuft und dass du da auch aus höheren Partitionen booten kannst.