Abo
  • Services:
Anzeige
Die Kernel-Entwickler diskutieren über die sinnvolle Umsetzung von Live-Patching.
Die Kernel-Entwickler diskutieren über die sinnvolle Umsetzung von Live-Patching. (Bild: Liam Quinn, CC BY-SA 2.0)

Linux 4.0: Streit um das Live-Patching entbrennt

Die Kernel-Entwickler diskutieren über die sinnvolle Umsetzung von Live-Patching.
Die Kernel-Entwickler diskutieren über die sinnvolle Umsetzung von Live-Patching. (Bild: Liam Quinn, CC BY-SA 2.0)

Kaum sind die ersten Funktionen für das Live-Patching im Linux-Kernel, debattieren die Entwickler über dessen Nutzung. Wie die Diskussion auch ausgeht, es wird wohl noch Zeit vergehen, bis die Funktion wirklich genutzt werden kann.

Anzeige

Eine der herausragenden Funktionen von Linux 4.0 ist die Möglichkeit, Korrekturen am Linux-Kernel ohne Neustart vorzunehmen - das sogenannte Live-Patching. Das Framework soll als Basis für zwei verschiedene Ansatzweisen dienen. Welche von den beiden einfach und sicher umgesetzt werden sollte, darüber streiten Kernel-Entwickler zurzeit in der Mailingliste.

Die Kernfunktionalität für das Live-Patching soll eigentlich die beiden, bereits vorhandenen Implementationen Kpatch und Kgraft vereinen. Ende Januar 2014 kündigte Suse Kgraft an. Kurz darauf folgte Red Hat mit der Vorstellung seiner Entwicklung Kpatch. Auf der Linux Plumbers Konferenz im November 2014 hatten sich die beiden Teams darauf geeinigt, die beiden Techniken zusammenzuführen. Der Red-Hat-Angestellte Seth Jennings hatte Code veröffentlicht, der den größten Teil der gemeinsamen Funktionen von Kgraft und Kpatch vereint.

Streit um die Konsistenzprüfung

Zwar lässt sich der Code bereits dazu verwenden, geladene Kernel-Bestandteile durch einen entsprechenden Patch auszutauschen und sogar mit dem Patch-Vorgang so lange zu warten, bis das entsprechende Modul tatsächlich geladen wird. Doch eine sehr wichtige Funktion fehlt noch: Bisher wird nicht überprüft, ob der alte sowie der neue Code zeitgleich ausgeführt werden. Denn der Konsistenztest wird von Kgraft und Kpatch jeweils anders implementiert.

Wie er endgültig umgesetzt werden soll, darüber sind die Entwickler uneins. Bisher wird die in Kgraft umgesetzte Variante verwendet. Statt wie bei Kpatch das gesamte System anzuhalten, leitet Kgraft jeden einzelnen Prozess vom alten auf den neu gepatchten Kernel-Code um. Um diesen Vorgang zu beschleunigen, wurde wiederum das Stack-Tracing aus Kpatch eingebaut.

Stack-Tracing ist zu unsicher

Dagegen regt sich Widerstand. Denn das Stack-Tracing gilt unter einigen Entwicklern als zu unzuverlässig. Es habe in der Vergangenheit dort etliche Fehler gegeben. Noch vorhandene Bugs könnten erst dann auftauchen, wenn ein Live-Patch angewendet werde. Dann könnte ein System aber unbrauchbar werden, schreibt Entwickler Ingo Molnar. Und je nach Systemarchitektur gibt es die eine oder andere mögliche Panne zu beachten. Das macht das Stack-Tracing insgesamt zu fehleranfällig, um eine 100-prozentige Sicherheit beim Live-Patching zu garantieren.

Es gebe aktuell mehrere Lösungsvorschläge ohne Stack-Tracing, die allerdings alle nicht perfekt seien, schreibt Kernel-Entwickler Jonathan Corbet bei LWN. Eine davon besteht darin, jeden Prozess zunächst in einen Ruhezustand zu versetzen. Das funktioniere aber nicht mit den Kernel-Threads, für die dann eine andere Lösung gesucht werden müsste. Damit blockierte Prozesse wieder genutzt werden können, müssten dann auch zahlreiche Systemaufrufe und Treiber angepasst werden. Die Code-Anpassungen wären aufwendig und würden viel Zeit in Anspruch nehmen.

Unzureichende Alternativen

Die zweite Alternative ist, das bei Kgraft genutzte Modell ohne Stack-Tracing zu verwenden. Allerdings würde ein System unter Umständen mehrere Sekunden lang in einem inkonsistenten Zustand bleiben, was in vielen Fällen viel zu lange ist. Nach einem weiteren Vorschlag könnte auf die Konsistenzprüfung gänzlich verzichtet werden. Das würde allerdings die Patches auf kleinere Sicherheitsupdates beschränken.

Molnar geht in der Diskussion noch einen Schritt weiter und schlägt vor, sowohl auf Kgraft als auch auf Kpatch zu verzichten. Stattdessen solle der aktuelle Zustand des Systems gespeichert werden. Anschließend könnte der neue Kernel mit Kexec geladen und der gespeicherte Zustand mit diesem wieder gestartet werden. Diese Idee sei nicht neu, schreibt Corbet. Einige Entwickler arbeiten seit längerem an dem Konzept der Seamless Kernel Upgrades. Der Kgraft-Entwickler Vojtech Pavlik argumentiert jedoch, dass ein solch komplexes System auch etwa zehn Jahre brauche, um umgesetzt zu werden.

Dass ein funktionierendes Konsistenzmodell bereits im nächsten Kernel 4.1 umgesetzt wird, hält Corbet aufgrund der aktuellen Diskussion für unwahrscheinlich. Möglicherweise müssen Nutzer noch bis mindestens bis Ende dieses Jahres warten, bis die Funktion wirklich nutzbar ist.


eye home zur Startseite
v3nd3774 02. Mär 2015

Davon mal abgesehen, das ich eindeutig einen Sinn im live-patching sehe, welchen andere...



Anzeige

Stellenmarkt
  1. K+S Aktiengesellschaft, Kassel
  2. Schlütersche Verlagsgesellschaft mbH & Co. KG, Hannover
  3. Hornbach-Baumarkt-AG, Großraum Mannheim/Karlsruhe
  4. Hornbach-Baumarkt-AG, Neustadt an der Weinstraße


Anzeige
Blu-ray-Angebote
  1. 24,99€ (Vorbesteller-Preisgarantie)
  2. 49,00€ (zzgl. 4,99€ Versand oder versandkostenfrei bei Abholung im Markt)
  3. 24,99€ (Vorbesteller-Preisgarantie)

Folgen Sie uns
       


  1. Hauptversammlung

    Rocket Internet will eine Bank sein

  2. Alphabet

    Google-Chef verdient 200 Millionen US-Dollar

  3. Analysepapier

    Facebook berichtet offiziell von staatlicher Desinformation

  4. Apple

    Qualcomm reduziert Prognose wegen zurückgehaltener Zahlungen

  5. Underground Actually Free

    Amazon beendet Programm mit komplett kostenlosen Apps

  6. Onlinelexikon

    Türkische Behörden sperren Zugang zu Wikipedia

  7. Straßenverkehr

    Elon Musk baut U-Bahn für Autos

  8. Die Woche im Video

    Mr. Robot und Ms MINT

  9. Spülbohrverfahren

    Deutsche Telekom "spült" ihre Glasfaserkabel in die Erde

  10. Privacy Phone

    John McAfee stellt fragwürdiges Smartphone vor



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Mario Kart 8 Deluxe im Test: Ehrenrunde mit Ballon-Knaller, HD Rumble und Super-Turbo
Mario Kart 8 Deluxe im Test
Ehrenrunde mit Ballon-Knaller, HD Rumble und Super-Turbo
  1. Hybridkonsole Nintendo verkauft im ersten Monat 2,74 Millionen Switch
  2. Nintendo Switch Verkaufszahlen in den USA nahe der Millionengrenze
  3. Nintendo Von Mario-Minecraft bis zu gelben dicken Joy-Cons

Bonaverde: Von einem, den das Kaffeerösten das Fürchten lehrte
Bonaverde
Von einem, den das Kaffeerösten das Fürchten lehrte
  1. Google Alphabet macht weit über 5 Milliarden Dollar Gewinn
  2. Insolvenz Weniger Mitarbeiter und teure Supportverträge bei Protonet
  3. Jungunternehmer Über 3.000 deutsche Startups gingen 2016 pleite

Noonee: Exoskelett ermöglicht Sitzen ohne Stuhl
Noonee
Exoskelett ermöglicht Sitzen ohne Stuhl

  1. Re: Rumjammern aber bescheidene Gehälter zahlen

    MaxiSaaS | 18:39

  2. Re: Warum kenne ich arbeitslose ITler?

    MaxiSaaS | 18:35

  3. Re: Objektiv oder Subjektiv

    neocron | 18:28

  4. SaaS-Entwicklungssystem ohne Quelltexte oder wozu...

    MaxiSaaS | 18:26

  5. Re: Und später mal in ein paar Jahren

    plutoniumsulfat | 18:23


  1. 13:08

  2. 12:21

  3. 15:07

  4. 14:32

  5. 13:35

  6. 12:56

  7. 12:15

  8. 09:01


  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