Die Zeitsysteme des Linux-Kernels stolperten über die Schaltsekunde.
Die Zeitsysteme des Linux-Kernels stolperten über die Schaltsekunde. (Bild: Andreas Donath/Golem.de)

Schaltsekunde Zeitgeber des Linux-Kernels verursachen Serverausfälle

Fehlende Kommunikation zwischen der Systemzeit des Linux-Kernels und dem High-Resolution-Timer ist schuld daran, dass die Schaltsekunde zahlreiche Server aus dem Tritt brachte.

Anzeige

Die zusätzliche Schaltsekunde am 1. Juli 2012 hatte zum Ausfall zahlreicher Linux-Server geführt. In einer ersten Analyse hat Kernel-Entwickler Jonathan Corbet die beiden Zeit-Subsysteme als Fehlerquelle ausgemacht, die der Linux-Kernel bereitstellt. Die vom Kernel benutzte Systemzeit hat dem seit Kernel 2.6.16 eingeführten High-Resolution-Timer (Hrtimer) die Schaltsekunde nicht korrekt mitgeteilt.

Der Hrtimer verwendet intern eigene Zeitgeber, die unterschiedliche Zeitabstände zur Systemzeit haben. Die Realtime-Uhr in Hrtimer passt sich beispielsweise an die Systemzeit an, während die Monotonic-Uhr nicht gestellt werden kann, sie läuft immer nur vorwärts. Die Realtime-Zeitgeber sind von der jeweiligen CPU abhängig, denn diese können auch auf einem einzigen System unterschiedlich laufen. Der Hrtimer rechnet die von ihm ausgelesene Systemzeit in die entsprechenden Werte um, die von der Realtime-Uhr eines Prozessors genutzt werden können.

Fehlende Kommunikation zwischen Systemuhren

In der Kommunikation mit dem Hrtimer nutzte der Kernel nach seiner eigenen Anpassung der Systemzeit an die Schaltsekunde die abschließende Funktion clock_was_set() nicht. Das Resultat: Der Hrtimer lief eine Sekunde vor.

Für die meisten Anwendungen war das kein Problem, schreibt Corbet. In einigen Anwendungen laufen entsprechende Zeitschalter aber in weniger als einer Sekunde ab. Da die Timer nach einem Neustart wieder über die zusätzliche Sekunde stolperten, versetzen sie die jeweilige Anwendung in eine Endlosschleife, wie es mehrfach geschehen ist.

Der Befehl date; date `date +"%m%d%H%M%C%y.%S"`; date; behob das Problem meist ohne Server-Neustart. Einem weiteren Kommentar zufolge reicht der Befehl date -s "`date`".

Patch für Zeitangaben

Der Patch, den Kernel-Hacker John Stultz inzwischen eingereicht hat, reimplementiert die Funktion clock_was_set() in dem Schaltsekundencode, der sich bereits im Kernel befindet. Die Funktion wurde 2007 entfernt, da sie als vernachlässigbar galt. Allerdings muss die Funktion für jede CPU ausgeführt werden, was die Entwicklung des Patches etwas erschwerte.

Wann die nächste Schaltsekunde eingefügt wird, lässt sich nur schwer voraussagen, denn die Erdrotation nimmt nicht stetig ab. Corbet plädiert jedoch dafür, dass Entwickler und Distributoren ein solches Szenario testweise durchführen, um künftig Probleme zu vermeiden.

Seit der ersten Anpassung 1972 wurden insgesamt 35 Sekunden hinzugefügt.


muh3 05. Jul 2012

also erstmal nen Fisch: leider kommt das im Artikel raus, aber der Fehler wurde...

neocron 04. Jul 2012

das hat er doch gar nicht behauptet?

_4ubi_ 04. Jul 2012

Entweder hast du dich verlesen oder das wurde nachträglich geändert.

Kommentieren



Anzeige

  1. Problem Manager Telematik-Endgeräte (m/w)
    Daimler AG, Stuttgart
  2. Software-Entwickler (m/w) für Linux-Umgebung
    RIEKE COMPUTERSYSTEME GmbH, Martinsried
  3. System Engineer (m/w)
    TEXAS INSTRUMENTS Deutschland GmbH, Freising near Munich
  4. Mitarbeiter Support / User Helpdesk (m/w)
    meinestadt.de, Köln

 

Detailsuche


Top-Angebote
  1. TIPP: Die Hobbit Trilogie (3 Steelbooks + Bilbo's Journal) [Blu-ray] [Limited Edition]
    49,99€ Release 23.04.
  2. NUR NOCH HEUTE: Blu-rays reduziert
    (u. a. The Equalizer 13,97€, Django Unchained, Captain Phillips, White House Down u. Elysium für...
  3. TIPP: Xbox One weiß + Sunset Overdrive
    299,00€ (Tiefpreis!)

 

Weitere Angebote


Folgen Sie uns
       


  1. Nachruf

    Dif-tor heh smusma, Mr. Spock!

  2. Click

    Beliebige Uhrenarmbänder an der Apple Watch nutzen

  3. VLC-Player 2.2.0

    Rotation, Addons-Verwaltung und digitale Kinofilme

  4. Stellenangebote

    Apple sucht nach Mitarbeitern für VR-Hardware

  5. Snapcash

    Bezahlte Sexdienste entstehen bei Snapchat

  6. Robear

    Bärenroboter trägt Kranke

  7. Mobiles Internet

    Nvidia analysiert 4G-Daten bereits im Funkmast

  8. Spionagesoftware

    OECD rügt Gamma wegen Finfisher

  9. MWC 2015

    Ericsson zeigt 5G-Testsystem

  10. Hostingdienst Blogger

    Google entfernt doch keine sexuellen Inhalte



Haben wir etwas übersehen?

E-Mail an news@golem.de



Filmkritik Citizenfour: Edward Snowden, ganz nah
Filmkritik Citizenfour
Edward Snowden, ganz nah
  1. NSA-Ausschuss BND streitet Mithilfe bei US-Drohnenkrieg ab
  2. Operation Glotaic BND griff Daten offenbar über Tarnfirma ab
  3. Laura Poitras Citizenfour erhält einen Oscar

Invisible Internet Project: Das alternative Tor ins Darknet
Invisible Internet Project
Das alternative Tor ins Darknet
  1. Datenschützer Private Überwachungskameras stark verbreitet
  2. Play Store Weit verbreitete Apps zeigen Adware verzögert an
  3. Blackphone Schwerwiegender Fehler in der Messaging-App Silenttext

Honor Holly im Test: 130 Euro - wer bietet weniger?
Honor Holly im Test
130 Euro - wer bietet weniger?
  1. Honor Preis des Holly sinkt auf 110 Euro
  2. Honor Holly Je mehr Interessenten, desto günstiger das Smartphone
  3. Honor T1 8-Zoll-Tablet im iPad-Mini-Format für 130 Euro

  1. Es ist billiger

    LinuxNerd | 01:09

  2. Buah. Potthässlich.

    Peter Brülls | 00:51

  3. UI?

    theSoenke | 00:40

  4. Man sollte nochmal darauf Hinweisen, woran er...

    Wimmmmmmmmy | 00:39

  5. Re: IMHO: In 10 Jahren gibt es das Ding

    Peter Brülls | 00:30


  1. 19:46

  2. 18:56

  3. 18:43

  4. 18:42

  5. 18:15

  6. 17:59

  7. 16:57

  8. 16:46


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel