Kernel-Log: Erste Vorabversion von Linux 3.1

Die in knapp zwei Monaten erwartete Kernel-Version bringt Optimierungen für die Virtualisierung, Bad-Blocks-Management im Software-RAID-Code und einen ausgebauten Nouveau-Treiber für Nvidias Fermi-Grafikchips mit.

In Pocket speichern vorlesen Druckansicht 15 Kommentare lesen
Lesezeit: 10 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

Linus Torvalds hat die erste Vorabversion von Linux 3.1 veröffentlicht und dabei erwähnt, diese Version werden ein "ziemlich normales Release" . Damit hat er 17 Tage nach der Freigabe von Linux 3.0 das Merge Window der Ende September oder Anfang Oktober erwarteten Version geschlossen. Die erste Phase im Entwicklungszyklus war damit 3 Tage länger als gewohnt. Das war Torvalds' Tauchurlaub auf Hawaii geschuldet, in dem er seit einigen Tagen weilt; Impressionen liefert er über Google Plus.

Nun beginnt die Stabilisierungsphase, in der Torvalds und seine Mitstreiter vorwiegend Fehler beseitigen und normalerweise keine größeren Änderungen mehr integrieren; die größten Neuerungen von Linux 3.1 sind daher bereits jetzt absehbar. So wird der Code für Software-RAIDs bei einigen RAID-Leveln jetzt mit Medien umgehen können, die defekte Blöcke aufweisen.

Einen ganzen Stoß Verbesserungen gab es im Bereich Virtualisierung. KVM etwa bietet jetzt grundlegende Funktionen, um auch auf Intel-Prozessoren Gastsysteme aus einem anderen Gastsystem heraus zu starten (Nested Virtualization). Der XEN-Dom0-Code unterstützt nun die Textausgabe über die VGA-Console oder das Weiterreichen von PCI-Geräten an Gäste. Zero-Copy-Support für macvtap und vhost-net soll die Netzwerkperformance beim Virtualisieren verbessern.

Wie immer gab es hunderte von Änderungen, welche die Hardware-Unterstützung verbessern; neu ist etwa der WLAN-Treiber rtl8192de für Realteks PCIe-WLAN-Chips RTL8192DE und RTL8188DE. Der Nouveau-Treiber erzeugt sich jetzt selbst eine Firmware für Fermi-Grafikchips, die bei GeForce-Hardware der Serien 400 und 500 zum Einsatz kommt; in Kombination mit aktuellen Mesa-3D- und X.org-Treibern lassen sich dadurch einige 3D-Funktionen dieser Grafikchips nutzen.

Das im Frühjahr vorgestellte "Native KVM Tool" musste draußen bleiben, folgt aber vielleicht bei Linux 3.2; das ebenfalls im Userspace agierende Diagnose-Werkzeug Cpupower schaffte hingegen die Aufnahme. Über Hintergründe zu diesen und anderen Änderungen wird das Kernel-Log in den kommenden Wochen im Rahmen einer "Was 3.1 bringt" genannten Mini-Serie berichten.

Bereits vor einigen Tagen hat Andi Kleen den Longterm-Kernel 2.6.35.14 veröffentlicht. Wenig später folgte Greg Kroah-Hartman mit dem Stable-Kernel 2.6.39.4 und erklärte bei der Freigabe, dies werde die letzte Version auf Basis von Linux 2.6.39 sein; alle Anwender sollten auf Linux 3.0 wechseln. Auf die Frage, ob 2.6.39 ein Longterm-Kernel werde, antwortete Kroah-Hartman, es gäbe keine solchen Pläne. Er sehe auch keine Gründe, warum gerade 2.6.39 zu einem Longterm-Kernel werden solle, schließlich habe der Versionssprung auf 3.0 keine konzeptionell anderen Änderungen gebracht als 2.6.39 zuvor.

Zum Ende der ersten Augustwoche folgte mit Linux 3.0.1 der ersten Stable-Kernel auf Basis von Linux 3.0. Er bringt rund hundert Änderungen; die Freigabe-Mail enthielt die übliche Aufforderung, die zum Wechsel auf die neue Version drängt, ohne Gründe dafür zu erläutern. In Kürze sollten die Longterm-Kernel 2.6.32.44 und 2.6.33.17 erscheinen.

Kernel

  • Die Entwickler der Echtzeit-Erweiterungen für Linux arbeiten weiter an der Stabilisierung ihrer Realtime/RT-Patches für Linux 3.0; mit der siebten Version kehrte kürzlich die Unterstützung für Highmen auf i386/x86-32-Prozessoren zurück, die achte brachte einige Korrekturen.
  • GlusterFS-Entwickler Jeff Darcy zählt in seinem Blog einige Posix-Funktionen auf, die FUSE (File System in Userspace) nicht unterstützt.
  • Stephen Rothwell hat den Git-Zweig von Linux-Next umorganisiert, wodurch dieser nur mehr die Versionen aus den der letzten drei Monate enthält; ältere finden sich von nun an im Zweig "linux-next-history".
  • Mit dem Versionssprung auf Linux 3.0 schien es, als würde es den Kernel 2.6.40 nicht geben; Anwender von Fedora 15 erhalten aber seit einigen Tagen einen solchen im Rahmen der regulären Aktualisierungen angeliefert. Bei diesem Kernel handelt es sich um Linux 3.0, dem die Fedora-Entwickler allerdings die Version 2.6.40 gaben – das soll Probleme mit Programmen vermeiden, die eine führende "3" in der Versionsnummer verwirrt.
  • Luis R. Rodriguez hat "Compat-Wireless for Linux 3.0" veröffentlicht, mit dem sich die WLAN-Treiber von Linux 3.0 unter älteren Kernel-Versionen nutzen lassen.

Unterstützung für Grafikhardware

  • Keith Packard hat die zweite Vorabversion des X-Server 1.11 von X.org freigegeben; die finale Version ist für den 19. August geplant.
  • Rudolf Polzer hat die Verfügbarkeit von S2TC (Super Simple Texture Compression) bekannt gegeben. Es kann als Ersatz für die Bibliothek libtxc_dxtn dienen, die Unterstützung für den Textur-Kompressionsalgorithmus S3TC bietet. Die Bibliothek liefern viele Distribution nicht mit, weil sie wahrscheinlich Patente verletzen; S2TC umgeht das Problem, indem es bestimmte S3TC-Funktionen nicht implementiert oder anders umsetzt, was jedoch zu einer schlechteren Bildqualität führt.
  • AMD hat kürzlich Version 11.7 seiner proprietären Linux-Grafiktreiber zum Download freigegeben.

Kernel-Umland ("Plumbing layer"), Userland-Treiber, Entwicklertools, ...

  • Douglas Gilbert hat die Version 1.32 der sg3_utils veröffentlicht, mit der sich SCSI- und ATA-Kommandos an Geräte schicken lassen.
  • Karel Zak hat die erste Vorabversion der Werkzeugsammlung util-linux 2.20 veröffentlicht. Sie enthält unter anderem ein komplett neue geschriebenes Dmesg, das Inhalte filtert oder Warn-Level-Nummern in verständliche Bezeichnungen übersetzt. Das Programm Mountpoint ist neu dabei und Lsblk liefert mehr Informationen.
  • Die Flashrom-Entwickler haben die Version 0.9.4 ihres quelloffenen Programms veröffentlicht, das Flash-Chips ausliest, den Inhalt verifiziert oder diese neu beschriebt – etwa um das BIOS zu aktualisieren. Die neue Version bringt ein verbesserte Bedienoberfläche mit und soll Dutzende weiterer Flash-Chips, Chipsätze und Mainboards unterstützen.
  • Intel-Entwickler Matt Fleming hat efilinux 0.8 veröffentlicht. Er beschreibt es als Referenz-Implementierungen eines EFI-Boot-Loaders, der keine besondere Funktionen hat und bislang nur einen Linux-Kernel laden könne.
  • Matthew Garrett hat sich weiter mit dem (U)EFI/(Unified) Extensible Firmware Interface beschäftigt und beschreibt in "Further adventures in EFI booting", wie er mit Tricks EFI-Boot-Images erstellen konnte, die auf USB-Stick oder DVDs transferiert auf neuen und alten Macs oder aktuellen x86-Systemen arbeiten sollen.
  • Johannes Berg hat die Version 3.0 des WLAN-Konfigurationswerkzeugs iw freigegeben; die Versionsnummer des Programms soll von nun an jener der Kernel-Version folgen, dessen Nl80211-API es implementiert.
  • Am 27. und 28. September richten das Institut für Mikroelektronik- und Mechatronik-Systeme (IMMS) und das Open Source Automation Development Lab (OSADL) in Ilmenau einen Workshop zu Embedded Linux aus.
  • Die Entwickler des Projekts Hplip (Hewlett-Packard's Linux Imaging and Printing Software) haben die Version 3.11.7 der gleichnamigen Treiber für Drucker und Multifunktionsgeräte von HP veröffentlicht. Die Release Notes erwähnen als eine der Neuheiten die Unterstützung für die DeskJet-3050A-J611-Serie und drei LaserJet-Modelle.
  • Die Entwickler von Libguestfs haben die Version 1.12 ihrer Software freigegeben, die den Zugriff auf Datenträger virtueller Maschinen erleichtert. Laut den Release Notes kann das Programm virt-resize nun auch mit Btrfs umgehen und die Java-Unterstützung der Bibliothek sei jetzt komplett.

LKML-Diskussionen

  • In fast jedem Merge-Window hält Linus Torvalds andere Entwickler dazu an, nur Git-Pull-Requests für Git-Zweige zu schicken, die Tests durchlaufen haben; sie sollen zudem auf einem einigermaßen stabilen Entwicklungsstand von Linux basieren und nicht etwa auf einem gerade aktuellen Zwischenstand mitten im Merge Window. In diesem Entwicklungszyklus hat er auf diese und andere Aspekte rund um den Patch-Austausch mit Git noch häufiger als sonst hingewiesen als sonst; er drohte sogar, Pull-Requests mit unsauber aussehenden Git-Zweigen im nächsten Merge Window zu ignorieren.
  • Mel Gorman hat eine MMTests genannte Test-Suite zusammengestellt, die Benchmarks und Skripte zum Testen der Geschwindigkeit des Speicher-Subsystems (Memory Management/MM) enthält.
  • Google-Entwickler David Rientjes hat einige Messergebnisse veröffentlicht, bei denen der Speicherbröckchen austeilende SLAB-Allocator deutlich besser abschneidet als der neuere SLUB-Allocator,der für 3.1 gerade einige Optimierungen erhielt; die Entwickler diskutierten daraufhin über weitere Verbesserungen, um das Geschwindigkeitsdefinizit zu mindern oder zu beseitigen.
  • Liu Yuan hat vhost-blk zur Diskussion gestellt – ein Virtio-Block-Device-Accelerator, der die Performance beim Lesen und Schreiben von Datenträgern aus KVM-Gästen zu verbessern versucht. Dazu nutzt es einige schon bei vhost-net genannten Tricks, die den Overhead beim Datenaustausch reduzieren.

Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in den vorangegangenen Kernel-Logs auf heise open und in c't. Neue Ausgaben des Kernel-Logs werden auf den Identi.ca- und Twitter-Konten "@kernellog" erwähnt; die englischen, bei den Kollegen von "The H" erscheinenden Übersetzungen auf den Identi.ca- und Twitter-Konten "@kernellog2". Gelegentlich zwitschert der Autor des Kernel-Logs unabhängig davon über einige Kernel-Log-Themen bei Identi.ca und Twitter als "@kernellogauthor". (thl). (thl)