Über unsMediaKontaktImpressum
10. November 2014

Linux ohne Downtime patchen: Neuer Kernel-Patch soll kGraft und Kpatch zusammenführen

Live Patching für den Kernel ist das Ziel des Patch Sets, dass der Red Hat-Entwickler Seth Jennings eingereicht hat. Es enthält nur etwas mehr als tausend Code-Zeilen und soll die Ansätze von kGraft (Suse) und Kpatch (Red Hat) vereinen. Ziel ist es, den Kernel sowie seine Module online patchen zu können, ohne einen Reboot durchführen zu müssen. Neue Kernelfunktionen und Security Updates können so zur Laufzeit und ohne Downtime implementiert werden. Bereits im Sommer haben Entwickler von Suse versucht, kGraft in den Branch linux-next aufnehmen zu lassen. Doch die Kernel-Entwickler wollten zunächst die vorhandenen Lösungsansätze prüfen und deren Vor- und Nachteile bewerten. Am Rande der Plumbers-Konferenz gab es dazu nun ein Entwicklertreffen. Seth Jennings hat im Zuge dessen sein Patch Set vorgestellt. Es ist keine eigenständige Lösung, eher eine Basis für Interfaces zu Kpatch und kGraft. Patches beider Ansätze können damit umgesetzt werden. Dazu wird ftrace (function tracer) genutzt. Dieser "Linux Kernal Internal Tracer" wurde im Linux Kernel 2.6.27 eingeführt und kann weit mehr als nur Funktionen verfolgen. Die Patches verwenden eine Struktur (lp_patch), die detaillierte Informationen darüber bereitstellt, welche Funktion gepatcht werden soll, woher der neue Code bezogen wird und ob der Kernel oder ein Modul betroffen ist. Danach startet lp_register_patch() und registriert den Patch im Kernel. Mit lp_enable_patch() startet die Ausführung. Auf GitHub liegt ein Beispielpatch bereit. Aktuell wird auf LKML diskutiert und soweit man es beurteilen kann, ist die Resonanz recht positiv. Eine Aufnahme in den Kernel wäre eventuell mit 3.19 möglich. Beschlossen ist indes noch nichts. Sie möchten zukünftig per Newsletter informiert werden? Hier können Sie sich zu unserem Newsletter anmelden.