Open Source im professionellen Einsatz
Linux-Magazin 01/2017
© Mariusz Niedzwiedzki, 123RF

© Mariusz Niedzwiedzki, 123RF

Kernel 4.9: Stack vergrößert, XFS mit CoW, Explicit Fencing

Mehr Platz im Speicher

Mit 14308 Commits stellt der Linux-Kernel 4.9 einen neuen Rekord auf und überflügelt damit die bisherige Megaversion 3.15. Änderungen am Stack sorgen für mehr Sicherheit, XFS erhält Superkuh-Power.

623

Das Merge Window für Kernel 4.9 schloss Linus Torvalds einen Tag früher als erwartet. Der Finne begründete [1] dies mit dem Umfang der bereits eingereichten Änderungen. Auf diese Weise könne er in letzter Minute eingehende Einreichungen verhindern. Schuld seien aber auch zwei unerwartete Unterbrechungen während des Merge-Prozesses gewesen, die ihm ein wenig Stress verursacht hätten.

Zugleich äußerte sich Torvalds zu seiner Lieblingsänderung im Kernel 4.9. Dies sei der von Andy Lutomirski eingereichte und im virtuellen Adressraum anlegbare Kernelstack [2]. Indem die Entwickler ihn in den virtuellen Adressraum verpflanzen, falle seine Größe nicht mehr ins Gewicht. Bislang bildete der Kernel seinen Stack direkt auf physisch benachbarten Adressen im für den Kernel reservierten Arbeitsspeicher ab, und der war vom Umfang auf 8 KByte beziehungsweise 16 KByte (64 Bit) begrenzt.

Stack Overflows flogen in der Regel erst dann auf, wenn bereits andere Daten im Speicher überschrieben waren. Angreifer nutzten die Funktion vor allem, um Rootrechte auf Linux-Systemen zu erlangen. Die Änderung in Kernel 4.9 erhöht die Sicherheit, indem sie Pufferüberläufe von selbst erkennt und verhindert.

Greybus und LTS-Pläne

Die größte alleinstehende Änderung in Linux 4.9, das neue Subsystem Greybus [3], reichte Greg Kroah-Hartman ein. Es handelt sich um ein Anwendungsprotokoll für das Unipro-Protokoll [4]. Kroah-Hartman versicherte, dass Greybus auch ohne das von Google eingestellte Project Ara (Abbildung 1) zum Einsatz komme, etwa in einem Motorola-Telefon.

Abbildung 1: Ursprünglich hatte Motorola am Projekt Ara gearbeitet, später Google. 2016 stellt der Internetkonzern die Arbeit an dem modular aufgebauten Smartphone ein, der Greybus-Code ist ein Überbleibsel.

Zudem zieht er es in Betracht [5], Langzeit-Support für Kernel 4.9 anzubieten. Fest versprechen wolle er das aber nicht, da Entwickler die Ankündigung in der Vergangenheit dazu genutzt hätten, halbgare Entwicklungen in den Kernel zu werfen. Er werde den Support also erst nach einigen Monaten auf einer Webseite [6] bestätigen.

XFS mit Superkuh-Power

"XFS has gained super CoW powers!", so steht's in der Pull-Nachricht zum Dateisystem, was sich auf die neue Copy-on-Write-Funktionalität (CoW) für XFS bezieht, die Reflinks ermöglicht. Anstatt einen neuen Link anzulegen, der auf eine existierende Inode verweist, erzeugt das Dateisystem dank Reflinks eine neue Inode, die denselben Plattenplatz belegt wie die Originaldatei.

Das sieht von außen wie ein Kopiervorgang aus, ohne aber die aktuellen Datenblöcke zu kopieren, die Rede ist von "leichtgewichtigen Kopien". Hilfreich sind Reflinks etwa, um VM-Snapshots und Container zu erstellen, doch funktionieren sie nur in den Grenzen eines Dateisystems oder Subvolumes. Technisch ergänzen die Entwickler XFS um Shared Data Extents, wodurch ein einzelner Extent mehrere Besitzer haben darf.

Kernel 4.9 wird zwar die für Reflinks nötigen Änderungen enthalten, Support für den Userspace steckt aber noch in den Anfängen. Er lasse sich bislang nur mit Code aus dem Xfsprogs-Repository manuell nachrüsten. XFS-Entwickler Dave Chinner erwartet, dass angesichts des Umfangs der Änderungen weitere Patches und Fehlerbereinigungen folgen. Das Feature gilt als "experimentell" und ist mit einer Warnung versehen.

Weniger spektakulär fielen die Änderungen für die anderen Dateisysteme aus. Samsungs Flash-Dateisystem F2FS punktet im neuen Kernel nicht nur mit einer verbesserten Performance, die Entwickler haben auch die Fehlerbehandlung in ein paar Spezialfällen sowie das Speichermanagement verbessert. Für Btr-FS hat Maintainer Chris Mason ein umfangreiches Patchset eingereicht, das hauptsächlich Fehler entfernt und den Code bereinigt. Für Kernel 4.10 stellt Mason größere Änderungen am Extent-Puffer in Aussicht. Auch für Ext 4 standen hauptsächlich Aufräumen und Fehlerbereinigungen auf dem Zettel.

Auch im Bereich der Virtualisierung gab es eher kleinere Änderungen. So wechselt die Virtualisierungslösung Xen unter anderem auf einen neuen CPU-Hotplug-Mechanismus. KVM erhielt Patches, die den Power-PC-Support verbessern und zugleich für die Plattformen Mips und ARM Fehler beheben.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 2 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Linux 4.9 ist erschienen

    Linux-Kernel 4.9 ist fertig. Linus Torvalds vermutet, es handelt sich um die bislang umfangreichste Release, Grund dafür ist hauptsächlich das Greybus-Subsystem.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.