Login
Newsletter
Werbung

Mo, 27. Januar 2020, 13:33

Software::Kernel

Linux-Kernel 5.5 freigegeben

Linux-Initiator Linus Torvalds hat Version 5.5 des Linux-Kernels freigegeben. Die neue Version bringt neue Schnittstellen für kryptografische Operationen, die die Aufnahme von Wireguard in Linux 5.6 vorbereiten, und viele weitere Optimierungen und Verbesserungen.

Linus Torvalds

Hans-Joachim Baader

Linus Torvalds

Neun Wochen nach Linux 5.4 ist nun Linux 5.5 fertiggestellt. Mit etwa 14.350 Änderungen entspricht die Zahl der Änderungen fast genau der Vorversion. Etwas außergewöhnlich ist, dass Linux 5.5 fast ausschließlich Updates, Korrekturen und kleinere Verbesserungen enthält. Größere Neuerungen sind fast komplett abwesend. Wie sich bereits abzeichnet, wird das in Linux 5.6 anders sein, nicht nur durch die Aufnahme von WireGuard.

So besteht eine der größten Neuerungen in Linux 5.5 in neuen Schnittstellen für kryptografische Operationen, die die Aufnahme des VPN-Tunnels Wireguard in Linux 5.6 vorbereiten. Der Systemaufruf sysctl wurde dagegen entfernt, da er bereits seit zehn Jahren obsolet ist und längst keine Nutzer mehr haben sollte.

In der ARM64-Architektur wurde die ftrace-Funktionalität vervollständigt. Auf MIPS-Systemen wird nun auch die Code-Abdeckungsanalyse mit kcov unterstützt. Für RISC-V wurden seccomp und die Möglichkeit, für diesen Aufruf BPF-Filter zu definieren, implementiert. Auf x86-Systemen hingegen wurde der Systemaufruf iopl durch eine Emulation ersetzt. Der Aufruf gibt einem Prozess mit entsprechenden Rechten Zugriff auf sämtliche I/O-Ports des Prozessors. Mit ausreichenden Rechten ist es auch möglich, Interrupts zu sperren oder zu entsperren. Dies ist das Hauptproblem von iopl, weil Eingriffe in die Interrupts zu undefiniertem Verhalten führen können. Da iopl effizienter ist als ioperm und auch nicht entfernt werden kann, wurde sein Code so geändert, dass er das ursprüngliche Verhalten emuliert, aber keine Eingriffe in die Interrupts mehr gestattet. Die Geschwindigkeit von Prozesswechseln verringert sich dadurch bei solchen Prozessen etwas, doch dürfte dies kaum merklich sein.

Der Teil des CPU-Schedulers, der bestimmt, auf welchem Prozessor ein Prozess (weiter) ausgeführt wird, wurde komplett ersetzt und sollte in allen Fällen zu mindestens gleich effizienten, oft aber besseren Entscheidungen führen. Weitere Änderungen im Kern sind unter anderem die Möglichkeit, in clone3 die Prozess-ID in allen Namespaces festzulegen, eine Zustandsverwaltung von Live-Patches, Typprüfung von Zeigern, die an Trace-Punkten an BPF-Programme übergeben werden, und beschleunigte Aufrufe in BPF-Programmen durch »BPF Trampolines«.

Das Dateisystem Btrfs unterstützt drei weitere kryptografische Hash-Algorithmen, die als Prüfsummen verwendet werden können: xxhash64, blake2b und sha256. RAID1 kann Btrfs jetzt auch mit drei oder vier Laufwerken statt mit zwei handhaben. Der iomap-Mechanismus für robuste direkte Ein- und Ausgaben im virtuellen Dateisystem wurde um letzte fehlende Funktionalität ergänzt, die das Schreiben auf das Gerät betrifft. So benötigen Dateisysteme nun keinen spezifischen Code mehr für direke Ein- und Ausgaben. CIFS dagegen erhielt Unterstützung für den Systemaufruf flock und Multichannel.

Im Netzwerkbereich wurde ein neuer Mechanismus geschaffen, um Netzwerkschnittstellen zusätzliche Namen zu geben. Die Namen dürfen zudem bis zu 128 Zeichen lang sein, denn das alte Limit von 16 Zeichen hat sich in verschiedenen Konfigurationen als zu gering erwiesen. Neu sind auch Verschlüsselung und Authentifikation aller Nachrichten in der transparenten Interprozesskommunikation (TIPC). Die Adressfamilie VSOCK wurde um die Unterstützung für mehrere gleichzeitige Transporte erweitert. In der mac80211-Ebene kamen Warteschlangenlimits hinzu, die zu einer besseren Steuerung der Warteschlangen und damit zu höherer WLAN-Geschwindigkeit führen sollen.

Neu ist auch das Test-Framework KUnit. Intern wurde der refcount_t-Code so weit beschleunigt, dass auf architekturspezifische Varianten verzichtet werden kann. Diese wurden alle entfernt. Darüber hinaus kamen auch wieder Treiber für zahlreiche Chips aller Art hinzu. Die zahlreichen weiteren Änderungen sind im Änderungslog von Git zu finden. Die Seite Kernelnewbies.org hat eine übersichtliche Zusammenfassung der Änderungen veröffentlicht. Die aktuelle Version von Linux kann von kernel.org und zahlreichen Spiegel-Servern in Form von Patches oder tar-Paketen heruntergeladen werden.

Werbung
Kommentare (Insgesamt: 2 || Alle anzeigen || Kommentieren )
Re: sysctl soll weg? (Christian Wetzel, Mi, 29. Januar 2020)
sysctl soll weg? (social monad, Di, 28. Januar 2020)
Pro-Linux
Pro-Linux @Twitter
Neue Nachrichten
Werbung