Eine achte Entwicklerversion gibt es nicht. Der Kernel v3.5 ist wohl Torvalds Beitrag zum Füllen des Sommerlochs.
Die Differenz zwischen 3.5-rc7 und 3.5 ist nicht viel geringer als bei den letzten RCs. Der dickste Fisch im Teich sind wohl ein paar wenige Änderungen der Benennung von IDs im Systemuhr-Treiber für die ARM-basierten SPEAr-Prozessoren aus dem Hause ST Microelectronics. Diese sechs Commits sind für ein starkes Drittel der Änderungen verantwortlich. Weiterhin war auch eine größere Anzahl kleinerer Patches für die MIPS-Architektur dabei und Fehlerkorrekturen am GMA500-Grafiktreiber sowie Ethernet-Treibern verschiedener Broadcom- und Intel-Chips.
Doch was hat uns Linux 3.5 denn jetzt mitgebracht?
Das Ext4-Dateisystem kann nun mittels Prüfsummen die Unversehrtheit von Metadaten überprüfen, etwas, das bereits brtfs und zfs beherrschen. Dadurch kann beim Laden von Daten jedoch lediglich festgestellt werden, dass vorhandene Metadaten valide sind oder dass sie beschädigt wurden, deren Wiederherstellung ist mit dieser Funktion ebenso wenig abgedeckt, wie die Überprüfung der im Dateisystem gespeicherten Daten selbst.
„Bufferbloat“ ist ein Schlagwort, das man auf der Kernel-Mailing-Liste in diesen Tagen häufiger findet. Gemeint ist damit das Aufblasen des Puffers für Netzwerkpakete, die zwar gesendet wurden, für die vom Empfänger aber noch keine Empfangsbestätigung vorliegt. Bleibt diese aus, wird das betreffende Paket noch einmal verschickt, um zu gewährleisten, dass es drüben auch wirklich ankommt. Ungeschickte Umsetzungen des TCP-Protokolls in Netzwerkkomponenten führt nun dazu, dass sich ziemlich viele Datenpakete auf der Strecke befinden und dieser Meta-Puffer damit zu groß und auch zu träge wird. Seit Linux 3.3 wird an diesem Problem mit unterschiedlichen Ansätzen gearbeitet, der jüngste Versuch ist CoDel (Controlled Delay - gesteuerte Verzögerung), der die Größe der Warteschlange für zu versendende Netzwerkpakete in Abhängigkeit vom gegenwärtigen Netzwerkdurchsatz anpasst (Anmerkung: Wie das genau funktioniert, will sich mir nicht erschließen; der LWN-Artikel The CoDel queue management algorithm war mir unverständlich).
Ebenfalls in Netzwerkdingen bewegt sich eine Funktion, um Netzwerkverbindungen von einem Rechner zu einem anderen umzupflanzen. Dies wird nötig, wenn laufendes System mit offenen Netzwerkverbindungen von einem Host auf einen anderen transferiert wird - in Umgebungen mit virtuellen Servern heutzutage ein fast tägliches Geschäft. TCP connection repair ermöglicht dies nun, ohne dass aktive Netzwerkverbindungen dabei auf der Strecke bleiben sollen.
TCP Early Retransmit dient wieder der Steigerung der Leistungsfähigkeit einer Netzwerkverbindung. Dadurch soll nach einem Einbruch der Übertragungsrate rasch wieder zu einem möglichst hohen Durchsatz zurückkommt.
Weitere neue Funktionen sind zum Beispiel die Unterstützung von Frontswap, die bereits im Artikel zu Linux 3.5-rc2 angesprochen wurde, und eine QEMU-Emulation eines Cirrus-Grafikchips. Ich könnte noch eine Weile so weitermachen, aber es muss ja auch noch was für den Kernelrückblick von freiesMagazin in zwei Wochen übrig bleiben.
Die kleine Statistik:
| Commits | geänderte Dateien | eingefügte Zeilen | gelöschte Zeilen | Datum | Tage * | |
|---|---|---|---|---|---|---|
| 3.5-rc1 | 10 068 | 9 139 | 605 187 | 400 813 | 03.06.2012 | 14 |
| 3.5-rc2 | 215 | 197 | 3834 | 1464 | 09.06.2012 | 6 |
| 3.5-rc3 | 382 | 321 | 4350 | 1857 | 16.06.2012 | 7 |
| 3.5-rc4 | 267 | 322 | 2236 | 1194 | 24.06.2012 | 7 |
| 3.5-rc5 | 270 | 256 | 1564 | 1061 | 30.06.2012 | 6 |
| 3.5-rc6 | 187 | 172 | 1588 | 963 | 07.07.2012 | 7 |
| 3.5-rc7 | 225 | 187 | 1828 | 1124 | 14.07.2012 | 7 |
| 3.5 | 195 | 184 | 1566 | 1157 | 21.07.2012 | 7 |
* Tage seit dem letzten rc/Release
| Version | Commits | geänderte Dateien | eingefügte Zeilen | gelöschte Zeilen | Datum | Tage * |
|---|---|---|---|---|---|---|
| 3.0 | 9843 | 7946 | 554 267 | 440 894 | 22.07.2011 | 64 |
| 3.1 | 9380 | 9181 | 726 251 | 602 017 | 24.10.2011 | 94 |
| 3.2 | 12 695 | 12 608 | 1 645 447 | 1 417 264 | 04.01.2012 | 72 |
| 3.3 | 11 416 | 10 698 | 599 885 | 432 464 | 18.03.2012 | 74 |
| 3.4 | 11 829 | 11 086 | 576 155 | 358 368 | 20.05.2012 | 63 |
| 3.5 | 11 771 | 9 631 | 623 283 | 410 763 | 21.07.2012 | 62 |
* Tage seit dem letzten Release
Quelle: Linux Kernel Mailing List
PS: Ich hoffe, der Beitrag war jetzt zeitnah genug. ;-)
Kommentare
Basti
Mo, 07/23/2012 - 12:26
Permanenter Link
ty
Vielen Dank, wie immer sehr informativ. Da der Kernel eh einige Tage reifen muss, bis er in archlinux core einziehen darf, bist du noch nie „zu spät“ dran gewesen. Also nicht ärgern lassen :)
mathias
Mo, 07/23/2012 - 13:27
Permanenter Link
Och, wirklich geärgert habe
Och, wirklich geärgert habe ich mich nicht, aber die Note zum Abschluss konnte ich mir doch nicht verkneifen. Das hier ist eben ein Blog und keine Nachrichtenseite, das darf man auch mal merken :-D