Linux 293.000-mal booten
Zusammenfassung
Richard W. M. Jones findet eine seltene Linux-Bootregression durch automatisierte Wiederholung und statistisches Git-Bisecting.
Ideen
- Ein Fehler mit Wahrscheinlichkeit 1:1000 verschwindet leicht in gewöhnlichen Tests.
- Ein paralleles Harness wiederholt Boots und erkennt den charakteristischen Hängepunkt.
- Jeder vermeintlich gute Bisect-Schritt benötigt tausende erfolgreiche Durchläufe.
- Flaky Tests machen binäre Suche langsam und statistisch asymmetrisch.
- Reproduktion vor und nach dem verdächtigen Commit bestätigt die Ursache.
Einsichten
- Seltene Fehler verlangen Testbudgets, die ihrer Auftretenswahrscheinlichkeit entsprechen.
- Ein ausbleibender Fehler beweist nur mit wachsender Stichprobe belastbare Stabilität.
- Automatisierte Auswertung verwandelt Ausdauer in reproduzierbare Ingenieursarbeit.
Fakten
- Jones bootete Linux 292.612-mal innerhalb von 21 Stunden.
- Das Testharness nutzte bis zu acht parallele Threads.
- Eine Regression der printk-Zeitfunktion verursachte den Hänger in Linux 6.4.
Empfehlungen
- Automatisiere Start, Timeout, Logsammlung und Ergebnisbewertung vollständig.
- Nutze für seltene Fehler mehrere Wiederholungen pro Git-Bisect-Schritt.
Referenzen
Der Link zur Originalquelle öffnet einen neuen Tab.