Schlagwort: Kernel

  • Slave und Blacklist künftig nicht mehr im Kernel

    Slave und Blacklist nicht mehr im Kernel
    Bild: Krd (cropped) |Lizenz: CC BY-SA 3.0

    Seit dem gewaltsamen Tod von George Floyd am 25. Mai und dem darauffolgenden weltweiten Erstarken der »Black Lives Matter«-Bewegung gibt es in vielen IT-Projekten wieder eine Diskussion über die Verwendung von rassistischen Begriffen. Während die einen es für unabdingbar halten, als rassistisch angesehene Begriffe aus ihrer Software zu entfernen, halten andere das für reine Augenwischerei, die niemandem hilft.

    Unternehmen wie Microsoft, GitHub, Google und Twitter sind im Begriff, vermeintlich rassistisch kontaminierte Begriffe aus ihrer Software zu entfernen, die Entwickler von OpenSSL sprachen sich nach einer internen Umfrage dagegen aus.

    Auch beim Kernel

    Auch bei den Kernel-Entwicklern gab es Befürworter und Kritiker der geforderten Säuberung. Der bei Intel angestellte Entwickler Dan Williams brachte am 4. Juli den Stein ins Rollen und sah den Zeitpunkt für eine Stellungnahme des Projekts zu einer »inklusiven Sprachregelung« gekommen. Dieser Begriff beschreibt eine Ausdrucksweise, die keinen Anstoß erzeugt und sexistische rassistische und anderweitig als anstößig empfundene Begriffe vermeidet.

    Inklusive Sprache erwünscht

    Es entspann sich eine rege Diskussion, die überwiegend zu einer inklusiven Sprachregelung tendierte und sich hauptsächlich darum drehte, womit die inkriminierten Begriffe ersetzt werden sollten. Williams ging es dabei hauptsächlich um die Begriffspaare Master/Slave und Blacklist/Whitelist. Von deren Entfernung verspricht er sich, dass sich die Kernel-Entwicklung damit für weitere Personenkreise öffne.

    Torvalds Patch

    Torvalds Generalissimus Greg Kroah-Hartman war von Anfang an für die Ersetzung der Begriffe, Torvalds selbst ließ sich etwas mehr Zeit, bevor er sich äußerte. Das geschah am vergangenen Freitag in Form eines Patches, für 5.8-rc5, der die Verwendung der Begriffe Master/Slave und Blacklist/Whitelist bei neu eingereichtem Code vermeiden soll.

    Womit ersetzen?

    Torvalds stellte fest, die Diskussion sei am Abklingen und er sehe keinen Grund bis zum nächsten Merge-Window zu warten. Der Patch enthält auch Vorschläge, womit die inkriminierten Begriffe künftig ersetzt werden könnten. Anstatt Master/Slave werden unter anderem Primary/Secondary oder Leader/Follower vorgeschlagen. Anstelle von Blacklist/Whitelist könne Denylist/Allowlist oder Blocklist/Passlist verwendet werden. Es besteht allerdings keine Verpflichtung, bestehenden Code rückwirkend abzuändern.

    Ausnahmen

    Eine Ausnahme vom neuen Coding-Standard soll beispielsweise auch künftig die Pflege einer Userspace-ABI/API sein, oder wenn Code für eine bestehende Hardware oder eine Protokoll-Spezifikation aktualisiert wird, die diese Begriffe bereits vorgibt. Für neue Spezifikationen soll die Terminologie an den neuen Coding-Standard angepasst werden, wenn dies sinnvoll ist.

    Weitere Kreise

    Weitere Begriffe in der allgemeinen Diskussion sind etwa Whitehat/Blackhat als Bezeichnung für gute und böse Hacker, die Androids Sicherheitschef David Kleidermacher dazu veranlassten, seine Teilnahme und einen Vortrag auf der in diesem Jahr virtuell abgehaltenen Sicherheitskonferenz Black Hat abzusagen. Muss als Nächstes der Blacksmith, also der Schmied um seine altehrwürdige Berufsbezeichnung fürchten?

  • LTS für Kernel 4.19 und 5.4 auf 6 Jahre verlängert

    Greg Kroah-Hartman

    Greg Kroah-Hartman (GregKH), Linus Torvalds rechte Hand, ist verantwortlicher Maintainer des stabilen Kernel-Zweigs, des Staging-Zweigs und weiterer Subsysteme der Kernel-Entwicklung. Nebenbei pflegt er den ein oder anderen LTS-Kernel. Davon gibt es derzeit sechs, wovon die beiden letzten 4.19 und 5.4 sind.

    GregKH ist der Hüter der LTS-Kernel

    LTS-Kernel haben üblicherweise zwei Jahre Unterstützung, diese kann aber offiziell seit 2017 vom jeweiligen Maintainer verlängert werden. So gerade geschehen mit Kernel 4.19 und 5.4. GregKH hat in seiner Funktion als ihr Betreuer die Langzeitunterstützung für diese Kernel von 2 auf 6 Jahre verlängert.

    Kernel 4.19 und 5.4

    Somit wird Kernel 4.19 bis zum Dezember 2024 und Kernel 5.14 bis zum Dezember 2025 unterstützt. Der derzeit älteste Kernel mit LTS ist Kernel 3.16, der 2014 veröffentlicht wurde und noch im Juni 2020 EOL (end of life) erreichen soll. Betreut wird er von Ben Hutchins, Debians Kernel-Entwickler.

    Beliebt bei Ubuntu

    Solche LTS-Kernel sind auch beliebt bei Distributionen, die ebenfalls LTS bieten wie etwa Ubuntu oder Linux Mint. So wird Linux 5.4 mit Ubuntu 20.04 ausgeliefert, obwohl zum Veröffentlichungszeitpunkt bereits 5.5. verfügbar war und 5.6 kurz bevorstand.

    Inoffiziell seit 2.16

    Formalen Langzeit-Support für den Kernel gibt es seit 2011, aber bereits vorher wurden Kernel 2.6.16 und 2.6.27 länger als üblich gepflegt. Üblich sind ohne LTS lediglich die 8–10 Wochen, die ein Entwicklungszyklus dauert. Während dieser Zeit erhält ein Stable-Kernel Bugfixes rund einmal die Woche. Diese werden aus Mainline, also der jeweils aktuellen Entwicklung rückportiert.

    Insgesamt 6 LTS-Kernel

    Wie lange ein LTS-Kernel Support erhält, liegt beim Betreuer. Seit 2017 sind auch 6 Jahre ein offizieller Zeitrahmen, der erstmals von Kernel 4.4 genutzt wurde. Neben 4.19, 5.4 und dem bereits erwähnten 3.16 und 4.4 erhalten derzeit noch 4.9 und 4.14 LTS, alle sind ebenfalls auf 6 Jahre verlängert.

    Civil Infrastructure Platform

    Nur Sicherheits-Updates und wichtige Fehlerbehebungen werden auf LTS-Kernel zurückportiert, und sie werden gewöhnlich nicht sehr häufig aktualisiert. In Kernel-Kreisen wird über Unterstützung für 10 und 20 Jahre nachgedacht, um mehr Planungssicherheit für zivile Infrastruktursysteme zu schaffen.

  • Linux 5.7 freigegeben

    Linux 5.7 freigegeben

    Linus Torvalds hat über Pfingsten Linux 5.7 freigegeben. Die Entwicklung der neuesten Version von Linux scheint durch Corona nicht negativ beeinflusst worden zu sein. Die Anzahl der von annähernd 2.000 Entwicklern eingereichten Commits liegt mit fast 14.000 im Durchschnitt der Änderungen der letzten Zeit.

    ExFAT ade, hallo sdfat

    Die größte Änderung ist die Entfernung des mit Kernel 5.4 eingeführten, aber bisher nicht offiziellen exFAT-Staging-Treibers und stattdessen Samsungs Treiber sdfat als offizielle und von Microsoft abgesegnete exFAT-Implementation aufzunehmen.

    Grafiktreiber von Intel und AMD

    Wie immer gibt es auch bei Grafiktreibern und Dateisystemen viel Bewegung. Intels i915-Treiber unterstützt nun offiziell die GPU-Architektur Xe (Gen12) für Intels in 10 nm realisierte Tiger Lake-Architektur. Der AMD- Radeon-Treiber AMDGPU sah unter anderem einen Patch für die initiale Unterstützung für OLED-Backlights bei HDR/OLED Displays. Dabei wird die Helligkeit über den AUX-Zusatzkanal des DisplayPorts geregelt anstatt bisher über Pulsweitenmodulation (PWM).

    Das Extensible Firmware Interface (EFI) erhielt ein Patchset, das umfangreicher ausfiel als üblich. Der von Ingo Molnar eingereichte Pull Request begründet das mit Aktivitäten im Team des GRUB-Bootmanagers:

    Das GRUB-Projekt zeigt wieder Lebenszeichen, was dazu führt, dass die Einführung des generischen Linux/UEFI-Boot-Protokolls anstelle von x86- spezifischen Hacks, die immer schwieriger zu warten sind. Es gibt Hoffnung, dass alle zukünftigen Erweiterungen nun durch dieses Boot-Protokolls gehen werden.

    Darüber hinaus sind neben der Beseitigung von Fehlern und der üblichen Code-Bereinigung unter anderem auch vorbereitende Patches für eine künftige Unterstützung von EFI für RISC-V sowie Verbesserungen für AArch64/ARM64 enthalten.

    Dateisysteme Btrfs und XFS

    Bei den Dateisystemen erfuhren Btrfs und XFS nennenswerte Änderungen. Die Patches für Btrfs von SUSE-Entwickler David Sterba umfassen unter anderem Änderungen am Kern-Code, darunter Referenzzählungen und einen Leak-Detektor zum Schutz des Root-Dateibaums. Zudem erhielt Btrfs den neuen ioctl()-Befehl BTRFS_IOC_SNAP_DESTROY_V2, der das Löschen eines Untervolumens anhand seiner ID ermöglicht.

    In a world gone mad, the kernel looks almost boringly regular.

    TORVALDS ZUR ENTWICKLUNG VON LINUX 5.7

    Für XFS sind Änderungen integriert, die für einen kommenden Kernel ein Online-FSCK-Tool versprechen, an dem Oracle-Entwickler Darrick Wong bereits seit 2017 arbeitet. FSF2 unterstützt jetzt Kompression mittels Z-Standard (zstd).

    80 × 25 veraltet

    Zwei Tage vor der Veröffentlichung brach Torvalds mit einem aus den 80er Jahren stammenden Paradigma, indem er erklärte, der 80 x 25 Codierstil sei nicht mehr zeitgemäß und werde deswegen in die Kernel-Entwicklung nicht mehr forciert, obwohl weiterhin empfohlen.

    Merge Window für 5.8 geöffnet

    Die aktuelle Version von Linux kann von Kernel.org bezogen werden. Das zweiwöchige Fenster für Einreichungen zu Linux 5.8 ist nun geöffnet. Wenn alles glattläuft, sollte der nächste Kernel im Ende Juli oder Anfang August erscheinen. Wie immer bietet das Projekt KernelNewbies eine übersichtliche Zusammenfassung der Änderungen zu Kernel 5.7.

  • VirtualBox 6.1.6 unterstützt Linux Kernel 5.6

    Screenshot: ft

    Anwender, die gerne die jeweils aktuellsten Mainline-Kernel fahren, haben in den ersten Tagen und Wochen oft Probleme, das Grafiktreiber von Nvidia oder Anwendungen wie VirtualBox noch nicht auf den neuen Kernel angepasst sind. Da hilft dann nur das Anwenden eines Patches auf den Quelltext oder Warten auf ein Update.

    VirtualBox 6.1.6 ist da

    Seit Kurzem funktioniert der Nvidia-Treiber bereits mit Kernel 5.6 und nun hat Oracle das Patchen der Quellen mit der Veröffentlichung von VirtualBox 6.1.6 ebenfalls überflüssig gemacht. Auch erste Distributionspakete der neuen VirtualBox-Version sind bereits verfügbar, so etwa im AUR von Arch und in Debian-Unstable.

    Fehlerbereinigung

    Neben der Unterstützung von Kernel 5.6 behebt die neue Version der Virtualisierungssoftware auch diverse Fehler der Vorgängerversion und verbessert die grafische Bedienoberfläche. So wurden Fehler bei der Größenanpassung von Monitoren und im Multi-Monitorbetrieb bei Gästen unter X11behoben. Die Einbindung von USB-Geräten wurde stabilisiert. Auch das Kommandozeilentool VBoxManage und das Teilen der Zwischenablage zwischen Host und Gast wurden von diversen Fehlern befreit.

    Software-Virtualisierung entfernt

    Zeitgleich wurde auch VirtualBox 6.0.20 freigegeben, die ebenfalls Kernel 5.6 unterstützt sowie von oben genannten Fehlerbereinigungen profitiert. Version 6.0.20 ist wichtig für Anwender, die Virtualisierung per Software benötigen, diese Funktionalität wurde in VirtualBox 6.1 entfernt und wird mit Version 6.0.x noch bis Juli unterstützt.

    Per .run-Datei installieren

    VirtualBox 6.1.6 sowie das passende VirtualBox Extension Pack stehen auf der Oracle-Webseite zum Download bereit. Eine leicht nachvollziehbare Anleitung zur Installation der Oracle-Version direkt aus Debian und seinen Derivaten heraus findet sich im Axebase-Blog des Kollegen Stefan Hackebeil. Die hierbei verwendete .run-Datei kann durch Anpassung der Befehle aber auch in anderen Distributionen verwendet werden.

  • WireGuard 1.0.0 ist da

    WireGuard 1.0.0
    Bild: WireGuard | Quelle: XDA-Developers

    In Zeiten von weit verbreitetem Homeoffice stehen viele Anwender vor Sicherheitsproblemen, wenn es um abgesicherte Verbindungen zu Kollegen oder zu Firmenservern geht. Gerade kleine Unternehmer müssen hier selbst tätig werden und da kommt der VPN-Tunnel WireGuard gerade recht.

    Schwierige Aufnahme

    Zeitgleich mit der Aufnahme in Kernel 5.6 ist WireGuard in einer ersten stabilen Version 1.0.0 erschienen. Der Weg in den Kernel war schwierig und ich muss gestehen, ich hatte viel früher mit einer Aufnahme gerechnet, nachdem sich bereits 2017 Greg Kroah-Hartman anlässlich eines öffentlichen Code-Reviews lobend über die Software geäußert hatte und Linus Torvalds 2018 auf eine baldige Aufnahme gehofft hatte.

    Kritik an zweiter Crypto-API

    Als es dann um die konkrete Aufnahme ging, hatten einige Entwickler des Crypto-Subsystems Einwände gegen Komponenten der mit WireGuard ausgelieferten Crypto-Engine Zinc, die ein eigenes API mitbringt. Ein weiteres Crypto-Api im Kernel lehnten sie ab. Details dazu können in einem Artikel auf LWN nachgelesen werden.

    Auf alle Fälle zeigt die Geschichte, dass Torvalds und sein Vize Kroah-Hartman auch nur »Primi inter pares« sind und das ist gut so. Jetzt ist es aber geschafft und Version 1.0.0 belegt das zusätzlich.

    Stabiles Kernel-Modul

    WireGuard war schon länger stabil einsetzbar, jedoch musste mit jedem neuen Kernel das Modul per DKMS auf jedem Rechner neu gebaut werden. Sysadmins, die große Flotten von Rechnern betreuen dürften die Aufnahme in den Kernel als große Arbeitserleichterung sehen.

    Audit bestanden

    In seiner Ankündigung betont WireGuard-Entwickler Jason Donenfeld, dass die Aufnahme in den Kernel ein wichtiger Schritt sei, der ihm einiges Unbehagen bescherte und er deswegen eine Sicherheitsfirma mit einem Audit der nur 4.000 Zeilen Code beauftragt hatte, wie aus einer Mail an David S. Miller, Entwickler im Kernel-Netz-Subsystem hervorgeht.

    Es gibt bereits Backports für Ubuntus Kernel 5.4 für die Veröffentlichung mit Ubuntu 20.04 LTS am 23. April sowie für das Backports-Archiv von Debian 10 »Buster«.

    Für die Zeitschrift LinuxUser 06/2020 werde ich einen Artikel zum einfachen Aufsetzen eines WireGuard-Servers unter Ubuntu 20.04 auf einem ansonsten ausgedienten Notebook verfassen, den ich nach dem Erscheinen hier verlinken werde. Auch auf dem Raspberry Pi macht WireGuard eine gute Figur.

  • Linux 5.6 mit WireGuard freigegeben

    Linux 5.6
    Bild: Krd Lizenz: CC BY-SA 3.0

    Linus Torvalds hat Linux 5.6 freigegeben. Linux 5.6 ist einer der spannendsten Kernel seit Langem und ist vollgepackt mit interessanten Neuerungen aus den Bereichen Netz, Grafik, USB und Virtualisierung. Statistisch gesehen ist der neue Mainline-Kernel dagegen weniger imposant. In 63 Tagen Entwicklungszeit wurden 13.691 Einreichungen getätigt, bei denen 11.577 Dateien geändert wurden. Damit erhöht sich die Gesamtzahl der Dateien im Kernel auf 67.337 und die Zahl der Zeilen auf über 25,5 Millionen (ohne Dokumentation).

    WireGuard in Linux 5.6

    Wichtiger als das sind jedoch die Inhalte. Viel länger als erwartet dauerte die Integration des modernen VPN-Tunnels WireGuard, doch jetzt ist es geschafft. Damit wird die Verwendung der bereits weit verbreiteten Anwendung noch einfacher, da das Kernelmodul nicht mehr vom Anwender gebaut werden muss.

    Nächster Standard USB4

    Während wir uns noch mit dem Verständnis der Nuancen von USB-3, 3.1, 3.2 und USB Type C beschäftigen, erschien vor einem halben Jahr bereits USB4 (man achte auf die neue Schreibweise), dessen Unterstützung nun in Linux 5.6 Einzug hielt. Erste Geräte, die den neuen Standard unterstützen werden noch in diesem Jahr erwartet.

    Raspberry Pi 4 aufgewertet

    Besitzer eines Raspberry Pi 4 werden nach der Grundunterstützung in 5.5 im neuen Kernel nochmals bedacht. Der Broadcom PCIe-Controller des kleinen Rechners erfuhr die Integration eines Treibers, der auch den USB-Controller kontrolliert. Die ebenfalls mit 5.5 unterstützte Raspberry-Pi-CPU Broadcom Broadcom BCM2711 erhielt mit Linux 5.6 einen Treiber zur thermischen Kontrolle.

    VirtualBox vereinfacht

    Virtualisierung mit Oracles Virtualbox ist wieder etwas einfacher geworden als bisher. Der Treiber für gemeinsame Ordner wurde in den Kernel aufgenommen, sodass für die Nutzung dieser zwischen Gast und Host geteilten Ordner keine Gasterweiterungen mehr installiert sein müssen.

    Aufgrund der schieren Menge an Neuerungen Anzahl sind hier nur die für Endanwender wichtigsten Weiterentwicklungen erwähnt. Wer weitere Neuerungen von Linux 5.6 nachlesen möchte, kann das spätestens morgen für Laien verständlich – und das sind in Sachen Kernel-Interna wohl die meisten von uns – auf der Webseite Kernel Newbies tun.

  • Linux- und FreeBSD-Kernel über TCP verwundbar

    Linux- und FreeBSD-Kernel verwundbar
    Foto: Unsplash

    Netflix-Entwickler haben vier Sicherheitslücken im TCP-Code der Kernel von Linux und FreeBSD entdeckt. Eine davon kann per Denial-of-Service Attacke zum Auslösen eines Kernel-Panic genutzt werden.

    TCP steht für Transmission Control Protocol und ist ein Netzwerkprotokoll, das bestimmt, wie Daten zwischen Netzwerkkomponenten ausgetauscht werden. Im Gegensatz zum verbindungslosen UDP (User Datagram Protocol) stellt TCP dazu eine Verbindung zwischen zwei Endpunkten einer Netzverbindung her, auf der in beide Richtungen Daten übertragen werden können.

    Angriff per Integerüberlauf

    Die vier Lücken bieten einen Angriffsvektor in der Art, wie die TCP-Implementation im Kernel das Selective Acknowledgement (SACK) gehandhabt wird. Dabei handelt es sich um eine Erweiterung des TCP-Protokolls zur Steigerung des Datendurchsatzes bei Paketverlusten. Dabei wird per SACK nur das neue Paket und nicht der gesamte Inhalt des jeweiligen TCP Receive Window neu angefordert.

    Die Lücke, die durch einen Integerüberlauf beim Verarbeiten des TCP-SACK einen Kernel-Panic und damit den Absturz von Servern herbeiführen kann ist als CVE-2019-11477 katalogisiert. Die anderen drei Verwundbarkeiten erreichen durch Denial-of-Service Attacken eine Ressourcenverknappung, der zum Verlangsamen des Systems, zum Systemstillstand oder -Absturz führen kann.

    Die beiden anderen Linux betreffenden Lücken sind unter CVE-2019-11478 und CVE-2019-11479 katalogisiert. Die Lücke im Kernel von FreeBSD trägt die CVE-Nummer 2019-5599. Die mit Priorität hoch kategorisierte Lücke CVE-2019-11477 ist in allen Linux-Kerneln seit 2.6.29 aus dem Jahr 2009 vertreten.

    Bereits geschlossen

    Unter Linux wurden die Lücken bereits für die stabilen Kernel-Versionen 4.4.182, 4.9.182, 4.14.127, 4.19.52, sowie 5.1.11 geschlossen. Anwender, die nicht auf einen dieser Kernel aktualisieren können, behelfen sich mit einem Workaround, indem sie mittels

    sudo echo "0" > /proc/sys/net/ipv4/tcp_sack
    sudo echo "0" > /proc/sys/net/ipv6/tcp_sack

    die Unterstützung für TCP-SACK deaktivieren. Der Hack ist nicht permanent und muss nach einem Neustart wiederholt werden.

  • Linux 5.1 kann zu Datenverlust führen

    Fehler in Kernel 5.1
    Bild: Penguins | Quelle: pxhere | Lizenz: CC0

    Kernel 5.1 hat einen Fehler im Device Mapper eingeführt, der unter bestimmten Umständen zu massivem Datenverlust führen kann. Vorweg sei gesagt, dass der Fehler nur verschlüsselte Systeme betrifft. Wer nicht zu diesem Anwenderkreis gehört, muss sich also keine Sorgen machen.

    Fehler in Kernel 5.1

    Die bisher bekannten Betroffenen nutzten alle LVM und das Crypto-Modul dm-crypt in Zusammenhang mit einer Samsung-SSD. Letzteres kann bei der großen Verbreitung dieser Hardware nach meiner Einschätzung auch Zufall sein.

    TRIM ist übereifrig

    Der tatsächliche Datenverlust ist der TRIM-Funktion zuzuschreiben. Sie dient zur Markierung ungenutzter oder ungültiger Datenblöcke hauptsächlich auf SSDs zum Zweck der späteren Wiederbeschreibung. Das sind meist Bereiche, die von zuvor vom Anwender gelöschten Daten belegt waren.

    https://twitter.com/michael__lass/status/1130881332471427072

    TRIM vorerst abschalten

    Deshalb sollten Anwender mit dieser Kombination Befehle wie fstrim oder discard deaktivieren, bis der Bugfix, der in Kernel 5.1.5 enthalten ist, bei euch angekommen ist. Das gilt sowohl, wenn in /etc/fstab TRIM per discard aktiviert ist als auch für über einen Cronjob oder Systemd-Timer festgelegten fstrim Befehl. In der fstab wird dazu die Option discard entfernt, den fstrim-timer stellt man über zwei Befehle ab:

    systemctl disable fstrim.timer
    systemctl stop fstrim.timer

    Kernel 5.1.5 mit Bugfix

    Der kritische Fehler in Kernel 5.1, der auch in der Vorabversion 5.2rc1 vorhanden ist, wurde bei Red Hat und bei Arch Linux dokumentiert. Mittlerweile ist der Commit, der die Regression einführte bekannt und ein Patch im Git erschienen, der mit Linux 5.1.5 mittlerweile ausgerollt wird. Wenn ihr zum gefährdeten Anwenderkreis gehört, achtet bitte auf das Erscheinen von Linux 5.1.5 für eure Distribution und vergesst nicht, hinterher discard oder fstrim wieder einzuschalten.

  • Linux 5.0 – was ist neu?

    Linux 5.0
    Bild: Krd Lizenz: CC BY-SA 3.0

    Linus Torvalds hat am gestrigen Sonntag Linux 5.0 freigegeben, den ersten offiziellen Kernel, der mit einer 5 beginnt. Der Entwicklungszyklus war mit acht Vorabversionen etwas länger als gewöhnlich, die Zahl der Einreichungen liegt bei rund 12.800 und macht 5.0 zu einem eher kleinen Kernel-Release. Man muss bis zu 4.7 vom Juli 2016 zurückgehen, um einen Entwicklungszyklus zu finden, der weniger Changesets als 5.0 hatte.

    Kleiner Kernel 5.0

    Die Zahl der Beitragenden lag mit 1.712 – davon 276 Ersttäter – im Mittelfeld. Ansonsten hat der Sprung auf 5.0 anstatt 4.21 wenig Bedeutung, wie Torvalds wiederholt betont. Er möchte einfach nicht, dass die Zahl der Unterversionen zu hoch wird, oder wie er scherzhaft sagt: »Mir gehen Finger und Zehen zum Zählen aus.«

    Endlich FreeSync

    Lange mussten Besitzer von AMD Radeon Grafikkarten warten, bis FreeSync unter Linux verfügbar war. Mit Kernel 5.0 ist es nun so weit, der AMDGPU-Treiber unterstützt diese Technik. FreeSync ist der Markenname für eine Synchronisationstechnologie für LCDs, die eine dynamische Bildwiederholfrequenz unterstützen, um Screen-Tearing zu reduzieren.

    Zudem kann FreeSync die Akkulaufzeit verbessern, indem die Aktualisierungsrate des Panels reduziert wird, wenn keine neuen Bilder empfangen werden. Voraussetzung ist neben einer Radeon AMD Radeon R5-, R7- oder R9-Karte auch Mesa 19.0.

    Librem 5 SoC unterstützt

    Aufseiten von verbessertem Hardware-Support wird nun der NXP i.MX8 SoC unterstützt, der beim kommenden Linux-Phone Librem 5 zum Einsatz kommt. Weiterhin werden initial NVIDIA Turing GPUs sowie Intel Icelake Gen11 Graphics unterstützt. Der Raspberry Pi erhielt einen Touchscreen-Treiber.

    Adiantum ersetzt Speck

    Googles Verschlüsselungsalgorithmus Adiantum tritt an die Stelle des wieder aus dem Kernel entfernten Algorithmus Speck. Adiantum soll Verschlüsselung auf Geräten mit nur wenig Ressourcen erleichtern. Zudem wurde ​​die aus Russland stammende Standard-Crypto-Hash-Funktion Streebog in den Kernel aufgenommen.

    Die Entwickler haben einen der beiden Block-Layer-Ansätze entfernt und damit auch die I/O-Scheduler CFQ und Deadline. Als Ersatz stehen die moderneren Scheduler BFQ und Blk-Mq weiterhin zur Verfügung.

    Btrfs kann wieder Swap-Dateien

    Bei den Dateisystemen erhält Btrfs erneut Unterstützung für Swap-Dateien. Binderfs, das der Inter-Prozess-Kommunikation unter Android dient, wurde von Greg-Kroah-Hartman eingebracht. Der Mechanismus, auf dem auch die beiden geplanten Busse Bus1 und KDBUS aufsetzen, kann jetzt auch aus Containern heraus genutzt werden. Das F2FS-Dateisystem (Flash-Friendly File-System), das jetzt auch von Googles Pixel-Geräten unterstützt wird, erhielt einige Verbesserungen.

    Die aktuelle Version von Linux kann von Kernel.org bezogen werden. Das zweiwöchige Fenster für Einreichungen zu Linux 5.1 ist nun geöffnet. Wie immer bietet die Seite Kernel Newbies eine detaillierte, leicht verständliche Zusammenfassung der Änderungen zu Kernel 5.0

  • Linux 5.0 anstatt 4.21

    Linux 5.0
    Bild: Krd Lizenz: CC BY-SA 3.0

    Linus Torvalds hat am Wochenende Linux 5.0-rc1 veröffentlicht und damit den Umstieg vom Vorgänger 4.20 auf eine neue Hauptversion eingeleitet. Wie Torvalds in der Ankündigung schreibt, gibt es keinen direkten Anlass für den Wechsel auf die 5. Wer einen solchen brauche, könne einfach annehmen, Torvalds seien die Finger und Zehen ausgegangen, um weiter hochzuzählen.

    Keine Regel

    Der letzte Wechsel auf eine Hauptversion fand 2015 von 3.19 auf 4.0 statt. Somit war allerseits bereits im alten Jahr erwartet worden, dass anstatt 4.20 beim neuen Kernel eine 5 vorne stehen würde. Da Torvalds jedoch keine Regel etablieren wollte, wurden die Erwartungen diesbezüglich enttäuscht.

    Mit der Veröffentlichung der ersten Vorabversion des neuen Kernels schließt sich auch das über die Feiertage geöffnete, zweiwöchige Merge-Window, das Fenster für die Einreichung neuen Codes für den Kernel. In den nächsten Wochen geht es um die Konsolidierung der eingereichten Neuerungen.

    Durchschnittliche Größe

    Die Einreichungen für Kernel 5.0 sind mit rund 11.000 von der Anzahl her nicht rekordverdächtig, sondern eher Durchschnitt. Kernel 4.20 lag hier mit über 14.000 Änderungen eher im oberen Bereich. Auch statistisch sind keine besonderen Abweichungen vom Mittelwert zu beobachten.

    Rund 50 Prozent entfallen auf Treiber, 20 Prozent sind
    Architektur-Updates, 10 Prozent betreffen Werkzeuge und die restlichen 20 Prozent verteilen sich auf Netzwerk, Dateisysteme und Dokumentation.

    EPYC Rome besser unterstützt

    Unter den Neuerungen sind, wie gewohnt, viele Änderungen bei Prozessoren und Grafikkernen. Die Integration von AMDs CPU EPYC Rome wird weiter ausgebaut. Die bereits lang erwartete Unterstützung für AMD FreeSync wird ebenfalls eingeführt. Erstmals unterstützt wird auch der Raspberry Pi Touchscreen sowie das unter anderem vom im April erwarteten Linux-Smartphone Librem 5 verwendeten i.MX 8M-SoC.

    Für Nvidias Turing-Architektur werden GeForce-RTX-Karten für den Gaming-Bereich initial unterstützt. Bei den Dateisystemen wird das virtuelle BinderFS implementiert. Binder ist der Kernel-Treiber für die Interprozess-Kommunikation bei Android.

    Crypto Algorithmen ausgetauscht

    Die aus Russland stammende Standard-Crypto-Hash-Funktion Streebog wurde in den Kernel aufgenommen. Während der umstrittene Verschlüsselungsalgorithmus Speck mit 4.20 entfernt wurde, kommt nun mit 5.0-rc1 Adiantum hinzu und soll Verschlüsselung auf Geräten mit wenig Ressourcen erleichtern.

    Das sind nur einige der Verbesserungen, mit denen Linux 5.0 aufwarten wird, wenn Ende Februar oder Anfang März die stabile Version freigegeben wird.