Kernel-Log – Was 3.1 bringt (2): Storage und Dateisysteme

Seite 2: Software-RAID, DM, Staccato

Inhaltsverzeichnis

Der für Software-RAID zuständige Kernel-Code bietet nun Bad-Block-Management bei RAIDs der Level 1, 4, 5 und 6, um defekte Plattensektoren der für den Verbund genutzten Datenträger zu erkennen und zu meiden (u. a. 1, 2, 3). Diese Funktion arbeitetet nicht mit MD-Arrays, die Version 0.90 der MD-Metadaten verwenden. Ferner ist die noch in Entwicklung befindlichen Version 3.3 des Userland-Werkzeugs Mdadm erforderlich; einige Hinweise dazu liefert MD-Maintainer Neil Brown in einer Mail und beim Patch-Review für Linux 3.1.

Das bei der Verschlüsselung von Laufwerken genutzte Dm-Crypt kann ab 3.1 Discard-Kommandos an das darunter liegende Medium weiterleiten. Das ist etwa für SSDs interessant, damit diese per ATA Trim von frei gewordenen Bereichen erfahren, was Geschwindigkeit und Lebensdauer steigert. Diese Funktion ist allerdings aus Sicherheitsgründen deaktiviert, damit Angreifer keine Rückschlüsse aus dem Grad der Datenträgerbelegung ziehen können. Der Device Mapper kann nun auch auf die RAID-1-Funktionen des MD-Codes zurückgreifen und unterstützt das Speichern der Metadaten auf einen eigenen Datenträger – solche "Metadata Devices" sollen Fehlerbehandlung und Integritätsprüfung verbessern.

  • Der HFS-Plus-Code unterstützt jetzt Datenträger mit mehr als 2 TByte Speicherkapazität.
  • Wie Windows-Versionen mit NT-Unterbau kann Linux ab 3.1 bis zu vier Gigabyte große Dateien auf FAT16-Laufwerken abspeichern, sofern diese 64 KByte große Cluster nutzen.
  • Über die neuen Funktionen SEEK_HOLE und SEEK_DATA des Virtual File System Layer (VFS) lassen sich größere Speicherbereiche in Dateien finden, die lediglich Nullen enthalten.
  • Ecryptfs unterstützt jetzt "Encrypted Keys".
  • Der Code für Parallel NFS (pnfs) beherrscht nun IPv6.
  • Über das neue Device /dev/loop-control können die neuesten Versionen von Losetup dynamisch Loop-Devices erzeugen oder entfernen; das bislang übliche Vorgeben einer bestimmten Zahl von Loop-Devices über Kernel/Modul-Parameter kann daher entfallen.
  • Der Treiber Bfa unterstützt nun den Brocade-1860 Fabric Adapter.
  • Im Artikel "Avoiding the OS abstraction trap" erläutert Intel-Entwickler Dan J. Williams auf LWN.net einige der Schwierigkeiten, mit denen er und seine Kollegen bei der Arbeit am Isci-Treiber für den SAS-Controller in Intels Server- und Workstation-Chipsatz C600 zu kämpfen hatten. Dieser Treiber stieß bei Linux 3.0 zum Kernel, nachdem ihn die Intel-Entwickler erheblich umgebaut hatten. Das war nötig geworden, weil Teile des Treibers ursprünglich betriebssystemunabhängig konzipiert worden waren, er sich dadurch aber nicht sonderlich gut in Linux einfügte – erfahrene SCSI-Entwickler hatten die Aufnahme daher anfangs abgelehnt.

Viele kleinere, aber keineswegs unbedeutende Neuerungen finden sich in der folgenden Liste mit den englischen Commit-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele der Verweise im vorangegangenen Text auf das Webfrontend des von Linus Torvalds gepflegten Git-Zweigs mit den offiziellen Kernel-Quellen auf Kernel.org. Der über diese Links angezeigten Commit-Kommentar und der darunter ausgegebene Patch liefern zahlreiche weitere Informationen zur jeweiligen Änderungen.

Vor jedem Link finden sich in eckigen Klammern einige Buchstaben und Zahlen. Ein "C" kennzeichnet Patches mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten, die bei der Kernel-Konfiguration über "make menuconfig" oder "make xconfig" angezeigt werden. Ein "D" steht bei Patches, die die Dokumentation verändern, die im Kernel-Zweig unterhalb von Documentation/ liegt. Ein "N" weist Änderungen aus, die eine neue Datei anlegen. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: eine "1" kennzeichnet Änderungen, die inklusive Kommentar zwischen 10 und 20 KByte groß sind, eine "2" für solche, die zwischen 20 und 30 KByte Umfang haben; Änderungen ohne Zahl sind kleiner als 10 KByte, Patches mit einer "9" hingegen 90 KByte oder größer.