Linux-Kernel 6.12 ist offiziell veröffentlicht
Die endgültige Version des Linux-Kernels 6.12 wurde am 17. November 2024 veröffentlicht. Linux-Kernel 6.12 führt neue Funktionen und eine Vielzahl von Verbesserungen in verschiedenen Subsystemen ein, mit dem Schwerpunkt auf verbesserter Leistung, erweiterter Funktionalität und erhöhter Sicherheit.
In der Kernel-Mailingliste erwähnte Linus Torvalds, dass die letzte Woche vor der Version 6.12 frei von unerwarteten Problemen war. Er bestätigte, dass sie mit dem üblichen Veröffentlichungsplan fortfahren würden, wobei das Merge-Fenster am nächsten Tag geöffnet werden sollte.
Er erkannte die frühen Beiträge an, wobei bereits über zwei Dutzend Pull-Requests eingegangen waren.
Bevor er das Merge-Fenster öffnete, ermutigte Torvalds dazu, diese neueste Veröffentlichung zu testen, um sicherzustellen, dass alles in Ordnung war. Er wies darauf hin, dass die Änderungen der vorherigen Woche hauptsächlich aus Rücknahmen und kleinen Korrekturen bestanden, die über den Code des Kernels verteilt waren.
Er sicherte auch zu, dass es bei den jüngsten Änderungen keine größeren Bedenken gab. Die Änderungen umfassten Rücknahmen, die in letzter Minute durchgeführt wurden, und kleine Korrekturen an verschiedenen Teilen des Kernels.
In diesem Artikel werden wir die Verbesserungen des Linux-Kernels 6.12, wichtige Änderungen und Meilensteine, die in jeder Phase der Entwicklung des Kernels erreicht wurden, besprechen.
Linux-Kernel 6.12: Verbesserungen und Herausforderungen
Der Linux-Kernel 6.12 brachte zahlreiche Verbesserungen in verschiedenen Subsystemen, einschließlich Treibern, Dateisystemen und Kernkomponenten des Kernels. Der Entwicklungsprozess stand jedoch vor einigen Herausforderungen, insbesondere in Bezug auf die Größe und Komplexität bestimmter Veröffentlichungskandidaten.
Erhebliche Verbesserungen
- Direktes Einpflegen von PREEMPT_RT: Diese Funktion ermöglicht Echtzeitfähigkeiten und macht Linux reaktionsschneller für zeitkritische Anwendungen. Dies war ein bedeutender Fortschritt, um Linux für eine breitere Palette von Echtzeitanwendungen geeignet zu machen.
- sched_ext: Diese Planungserweiterung wurde zusammengeführt und verbessert, wie der Kernel Aufgaben verarbeitet.
- Treiber-Updates: Ein erheblicher Teil der Updates betraf Treiber, mit speziellem Fokus auf GPUs und Netzwerke.
- Dateisystemverbesserungen: Es wurden Korrekturen für verschiedene Dateisysteme umgesetzt, darunter bcachefs, btrfs, ext4, NFS, XFS und SMB, um Datenintegrität und Zuverlässigkeit zu gewährleisten.
- Architektur-Updates: Plattform-spezifische Verbesserungen wurden für Architekturen wie x86, ARM, PowerPC, LoongArch und MIPS eingefügt.
- Änderungen am Kernkernel: Es wurden Aktualisierungen am Kernkernel vorgenommen, einschließlich des Schedulers, der Netzwerk-, BPF- und Tracing-Subsysteme, mit einem Fokus auf Optimierungen und der Behebung spezifischer Probleme.
- Rust-Unterstützung: Die laufende Entwicklung zur Integration der Programmiersprache Rust in den Kernel wurde fortgesetzt.
- Erweiterte Profilerstellung: Werkzeugaktualisierungen, insbesondere solche, die sich auf perf konzentrieren, verbessern die Leistungsprofilierung und ermöglichen es Entwicklern, Engpässe effektiver zu erkennen und zu beheben.
- Sicherheitsebenen: Das Release beinhaltete Verbesserungen der Sicherheitsmodule des Kernels und Korrekturen für bestehende Sicherheitslücken.
Herausforderungen während der Entwicklung
- Große Release-Kandidaten: Einige Release-Kandidaten, insbesondere RC4, waren auffallend größer als üblich, was Bedenken hinsichtlich ihrer Komplexität und des Potenzials für Fehler aufwarf. Diese größere Größe wurde zahlreichen kleinen Korrekturen und nicht bedeutenden Änderungen zugeschrieben, stellte jedoch dennoch eine Herausforderung für Test und Integration dar.
- Build-Regressionen: Der Entwicklungsprozess brachte neue Build-Fehler und einen signifikanten Anstieg von Build-Warnungen mit sich, was einen gezielten Aufwand erforderte, um sie vor der endgültigen Veröffentlichung zu beheben.
- Kommunikationsklarheit: Linus Torvalds betonte die Notwendigkeit einer klaren und präzisen Kommunikation in Merge-Commit-Nachrichten und forderte die Maintainer auf, Aktivform und Imperativsätze für ein besseres Verständnis zu verwenden.
Insgesamt hat die Entwicklung des Linux-Kernels 6.12 erfolgreich bemerkenswerte Verbesserungen in verschiedenen Bereichen integriert, aber auch die anhaltenden Herausforderungen bei der Aufrechterhaltung der Stabilität und der Bewältigung der zunehmenden Komplexität des Codes hervorgehoben.
Es gibt 7 RCs
Der Linux-Kernel 6.12 durchlief eine Reihe rigoroser Testphasen durch mehrere Release-Kandidaten (RCs). Es gab 7 Release-Kandidaten (RCs) für die Linux-Kernel-Version 6.12 vor der endgültigen Veröffentlichung.
Jede RC brachte bedeutende Verfeinerungen und Verbesserungen mit sich, die in einer stabilen und funktionsreichen Endversion gipfelten.
Erlauben Sie mir, Ihnen eine kurze Zusammenfassung jedes Release-Kandidaten zu geben.
Linux-Kernel 6.12 RC1: Die Grundlage legen
Am 29. September 2024 veröffentlicht, markierte RC1 das Ende des Merge-Fensters und den Beginn intensiver Tests. Diese Version brachte zwei bemerkenswerte Funktionen:
- PREEMPT_RT: Dieses in den Hauptzweig aufgenommene Feature ermöglichte Echtzeitfähigkeiten und machte Linux reaktionsfähiger für Anwendungen, die präzises Timing erfordern.
- sched_ext: Diese Planungsverlängerung verbesserte die Effizienz der Aufgabenverwaltung des Kernels.
RC1 enthielt außerdem Updates für Treiber (55 % der Patches), Device-Tree-Quelldateien (5 %), Dokumentation (5 %) und Werkzeuge, wobei der Schwerpunkt insbesondere auf dem Performance-Profiling-Tool 'perf' lag (10 %). Die verbleibenden 25 % der Updates betrafen Kernel-Kernelemente wie architektonische Verbesserungen, Dateisystemerweiterungen, Netzwerkaktualisierungen, Verfeinerungen im Speichermanagement, Rust-Sprachunterstützung und Sicherheitsbereichserweiterungen.
Linux-Kernel 6.12 RC2: Ein erhebliches Update
RC2, veröffentlicht am 6. Oktober 2024, war ungewöhnlich groß für einen zweiten Release-Kandidaten. Wichtige Änderungen waren:
- Globale Header-Umbenennung: Die globale Header-Datei asm/unaligned.h wurde in linux/unaligned.h umbenannt.
- Dateisystem-Aktualisierungen: Korrekturen für Btrfs und EXT4 beheben Probleme wie Pufferüberlauf-Erkennung und Off-by-One-Fehler.
- Netzwerk- und Treiberverbesserungen: Dies beinhaltete Fehlerbehebungen für Ethernet-Treiber, Verbesserungen der Stabilität und Sicherheit der Bluetooth-Kommunikation sowie die Hinzufügung von Hilfsfunktionen für ein besseres Paketmanagement.
- Treiber-Updates: Neue Eigenheiten für Audiogeräte, Umgehungslösungen für AMD-Display-Treiberprobleme und Korrekturen im Zusammenhang mit der Kernel-Stack-Größe für die RISC-V-Architektur.
- Kommunikation der Maintainer: Linus Torvalds betonte die Bedeutung klarer Kommunikation und forderte die Maintainer auf, im Hinblick auf ihre Merge-Commit-Nachrichten den aktiven Sprachstil und Imperativsätze zu verwenden.
Zusätzliche Korrekturen in RC2 umfassten ACPI- und Energiemanagement, Fehlerbehebungen im Scheduler und Verbesserungen der Kernel-Selbsttests.
Linux-Kernel 6.12 RC3: Fehlerbehebungen und Stabilitätsverbesserungen
Veröffentlicht am 13. Oktober 2024, konzentrierte sich RC3 auf die Behebung von Fehlern, die Verbesserung der Leistung und die Steigerung der Stabilität. Zu den bemerkenswerten Änderungen gehörten:
- UTF-Tabellenregeneration: Dies führte zu einer erheblichen Differenz von 6.703 Zeilen.
- Treiberaktualisierungen: Hauptsächlich auf GPU- und Netzwerkkomponenten ausgerichtet, aber auch USB-, MMC-, fbdev- und Thermotreiber wurden berücksichtigt.
- Dateisystem-Reparaturen: Verbesserungen wurden an XFS, SMB und NTFS3 vorgenommen, um Leistungsengpässe und Stabilitätsprobleme zu beheben.
- Wesentliche Netzwerkverbesserungen: Fehlerbehebungen verhinderten Panikzustände im Netzwerkfiltersystem und verbesserten die Zuverlässigkeit von TCP und IPv6.
- Werkzeuge und Tests: Updates der Selbsttests, insbesondere für Speicherverwaltung und Netzwerkkomponenten, stellten sicher, dass die Werkzeuge mit den Kernel-Änderungen synchron blieben.
Linux-Kernel 6.12 RC4: Der größte in der 6.x-Serie
Veröffentlicht am 20. Oktober 2024, war RC4 die größte Version der 6.x-Serie in Bezug auf die Anzahl der Commits. Wichtige Änderungen waren:
- Treiber: Updates konzentrierten sich auf GPU- und Netzwerktreiber. Das RDMA-Subsystem erhielt ebenfalls Korrekturen für Fehler und Ereignisbehandlung.
- Dateisysteme: Bedeutende Aktivitäten umfassten Korrekturen für das bcachefs-Dateisystem. Verbesserungen wurden auch an SMB, XFS und Btrfs vorgenommen.
- Core-Kernel: Subsysteme wie der Scheduler, Networking, BPF und Tracing erhielten Updates, einschließlich Optimierungen und spezifischer Fehlerbehebungen.
Linux-Kernel 6.12 RC5: Rückkehr zur normalen Größe
Veröffentlicht am 27. Oktober 2024 kehrte RC5 nach dem ungewöhnlich großen RC4 zu einer eher typischen Größe zurück. Höhepunkte waren:
- Treiberupdates und -entfernungen: Der da8xx fbdev-Treiber wurde durch den tilcdc-Treiber ersetzt. Zahlreiche Updates zielten auf GPU- und Netzwerktreiber ab, zusammen mit Fehlerbehebungen für bcachefs.
- Dateisystemkorrekturen: Mehrere Dateisysteme erhielten Korrekturen, darunter btrfs, xfs, nfsd und 9p.
- Architektur- und Kernkernel-Verbesserungen: Updates für architekturspezifische Korrekturen (ARM64 KVM, x86 Benutzeradressmaske und LoongArch KASAN-Unterstützung), BPF-Erweiterungen, Korrekturen für Rennen in Netzwerkgeräte-Übertragungsfunktionen und zahlreiche KVM-Updates.
Linux-Kernel 6.12 RC6: Fokus auf Stabilität
Als „eine weitere Woche, ein weiteres RC“ von Linus Torvalds beschrieben, konzentrierte sich RC6, veröffentlicht am 4. November 2024, auf Stabilität und die Festigung des bestehenden Codes. Obwohl es etwas größer als ein typisches RC6 war, wurden keine alarmierenden Probleme gemeldet.
Wichtige Änderungen umfassten Treiber-Updates, Verbesserungen der Werkzeuge und Dokumentation, Verbesserungen im Kernspeichermanagement und Netzwerk, Fehlerbehebungen für Dateisysteme (bcachefs, XFS, Btrfs, AFS) und kleinere architekturspezifische Anpassungen.
Linux-Kernel 6.12 RC7: Letzte Verfeinerungen vor der endgültigen Veröffentlichung
Veröffentlicht am 11. November 2024, sollte RC7, der letzte Release-Kandidat vor der endgültigen Veröffentlichung, bestehende Funktionen verfeinern und alle verbleibenden Fehler beheben. Wichtige Schwerpunkte waren:
- Treiber-Updates: GPU- und Netzwerk-Treiber erhielten erhebliche Aufmerksamkeit.
- Architekturverbesserungen: Hauptsächlich auf Device-Tree-Korrekturen konzentriert.
- Dateisystem-Verbesserungen: Korrekturen wurden für Dateisysteme wie bcachefs, btrfs, NFS und SMB implementiert.
- Wesentliche Änderungen im MM: Updates zur Verbesserung der Fehlerbehandlung im Kernspeicherverwaltungs-Subsystem (MM).
RC7 enthielt zudem Korrekturen und Verbesserungen in verschiedenen Subsystemen, einschließlich ARM-Architektur, Netzwerke, Grafik, Dateisysteme, Sicherheit, TPM-Treiber, Tracing-Subsystem, Sound und USB-Treiber.
Linux-Kernel 6.12 Endgültige Veröffentlichung
Schließlich wurde am 17. November 2024 der Linux-Kernel 6.12 veröffentlicht, was das Ende einer Reise markierte, die sieben Release-Kandidaten umfasste.
Jede RC spielte eine wichtige Rolle bei der Verfeinerung, Stabilisierung und Verbesserung des Kernels, getrieben durch die gemeinsamen Anstrengungen einer lebendigen Open-Source-Community.
Installiere den Linux-Kernel 6.12
Benutzer müssen möglicherweise einige Tage bis Wochen warten, bis der Linux-Kernel in die Repositories ihrer Linux-Distribution aufgenommen wird. Wenn Sie nicht so lange warten können, können Sie die Mainline-Anwendung verwenden, um den neuesten Kernel auf Ubuntu-basierten Systemen zu installieren.
Mainline ist eine grafische Anwendung, die speziell für die Installation von Ubuntu Mainline-Kernel-Builds auf Debian-basierten Distributionen entwickelt wurde.
Mainline vereinfacht den Prozess der Installation und Verwaltung von Ubuntu Mainline Kernel Builds. Diese Builds sind neuere Versionen des Linux-Kernels, die in den Ubuntu-Versionen noch nicht offiziell unterstützt werden.