Kernel-Log – Was 2.6.31 bringt (3): Storage und Dateisysteme

Seite 2: Leibesvisitation, Online-Defrag für Ext4, schneller booten

Inhaltsverzeichnis

Das neue Fsnotify ersetzt Dnotify und Inotify, mit denen sich Veränderungen im Dateisystem wie das Anlegen, Löschen oder Ändern von Dateien überwachen lassen (1, 2, 3). Das eigentliche Ziel des bei Red Hat beschäftigten Entwicklers Eric Paris ist jedoch das auf Fsnotify aufbauende Fanotify, das im Userspace arbeitenden Viren- und Malware-Scannern einen Eingriffspunkt bietet, um Dateien vor dem eigentlichen Zugriff auf Schädlinge überprüfen zu können. Das dahinter stehende Konzept hat Paris kürzlich zur Diskussion gestellt.

Hervorgegangen ist die Idee aus langen Diskussionen um Talpa, das ähnliches leisten sollte, aber bei den Kernel-Entwicklern keinen Anklang fand. Hintergründe liefern die Artikel "Kernel-based malware scanning", "The TALPA molehill" und "The fanotify API" bei LWN.net.

Bei den bisher genannten Neuerungen handelt es sich nur um die bedeutsamsten Änderungen, die die Kernel-Hacker bei Dateisystemen und im Storage-Bereich vorgenommen haben. Einige weitere im Kurzüberblick:

Dateisysteme:

  • Das Ext4-Dateisystem enthält jetzt Code zum Defragmentieren im laufenden Betrieb (Online Defrag). Komplett sei dieser aber noch nicht, wie Ext-Dateisystem-Entwickler Theodore Tso (tytso) kürzlich an anderer Stelle betonte. Weitere Patches für diese Funktion müssten noch begutachtet werden und auch beim zugehörigen Userspace-Programm stehe noch Arbeit an.
  • Die Unterstützung für NFS 4.1 wurde erweitert, es sind jedoch noch weitere Änderungen für 2.6.32 vorgesehen.

Storage:

  • Durch eine noch vor der Stabübergabe von Zolnierkiewicz an Miller aufgenommene Änderung respektiert das IDE-Subsystem nun standardmäßig HPAs (Host Protected Areas) – wer eine solche hat und noch Treiber des IDE-Subsystems einsetzt, sollte sich daher nicht wundern, wenn der Datenträger mit 2.6.31 ein wenig kleiner ist.
  • Der im Libata-Subsystem angesiedelte IDE/PATA-Treiber ata_piix für Intel-Controller scannt jetzt parallel nach Datenträgern, was die Initialiserungszeit des Treiber auf dem Eeepc des Entwickler halbieren soll.
  • Durch eine von vielen Änderungen im Block-Layer exportiert dieses nun etwa mit Hilfe der vom SCSI-Subsystem gelieferten Daten Informationen zur I/O-Topologie – dazu zählt unter anderem die dem Datenträger zugrunde liegende Sektorgröße. Das ist etwa für die Einteilung von Datenträgern mit Sektorgrößen ungleich 512 Byte oder die optimale Anordnung von Daten im RAID-Verbund von Interesse. Der Entwickler diese Codes erläutert einige Hintergründe in einem kürzlich veröffentlichten Vortrag (PDF, Seite 235 ff). Der für Software-RAIDs zuständige MD-Code kann die Topologie-Informationen bereits nutzen.
  • Die Unterstützung für Barrieren im Device Mapper wurde erheblich verbessert (delay, mpath, snapshot).
  • Ein Emulex-Entwickler steuerte einen fast 340 KByte großen Patch bei, der Unterstützung für neuere Fibre Channel Host Adapter aus Emulex' FightPulse-Familie im Treiber lpfc (Light Pulse Fibre Channel) nachrüstet; später kam noch ein Update obendrauf, das Unterstützung für target reset handler entrypoints nachrüstet. Vom selben Programmierer stammt auch der FC (FibreChannel) Pass Thru support.
  • Neu dabei ist der iSCSI-Treiber bnx2i für BNX2-Chips von Broadcom. Er arbeitet auf Wunsch mit dem neuen Treiber Cnic zusammen, den das Kernel-Log bereits bei der Beschreibung der Neuerungen im Netzwerkbereich erwähnte.