Kernel-Log – Was 2.6.37 bringt (2): Dateisysteme
Seite 3: Besserer Skalierung, kleine Perlen
Bessere Skalierung
Die kleinen Perlen
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 Hilfetexte und Konfigurationsoptionen enthalten, die bei der Kernel-Konfiguration über "make menuconfig", "make xconfig" und ähnliche Werkzeuge 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" steht etwa für Ä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.
Btrfs
- [
   Â] Btrfs: add support for mixed data+metadata block groups - [
   Â] Btrfs: allow subvol deletion by unprivileged user with -o user_subvol_rm_allowed - [
   Â] Btrfs: async transaction commit - [
   Â] Btrfs: let the user know space caching is enabled - [
   Â] Btrfs: Switch the extent buffer rbtree into a radix tree - [
   Â] Btrfs: tune the chunk allocation to 5% of the FS as metadata
Ext[234]
- [
   Â] ext3/ext4: Factor out disk addressability check - [
   Â] ext4: add batched_discard into ext4 feature list - [
   Â] ext4: add interface to advertise ext4 features in sysfs - [
   Â] ext4: Add new ext4 inode tracepoints - [
   Â] ext4: avoid uninitialized memory references in ext3_htree_next_block() - [
   Â] ext4: implement writeback livelock avoidance using page tagging - [
   3] ext4,jbd2: convert tracepoints to use major/minor numbers - [
   Â] ext4: move mpage_put_bnr_to_bhs()'s functionality to mpage_da_submit_io() - [
   Â] ext4: optimize orphan_list handling for ext4_setattr
NFS
- [
   2] NFS: add readdir cache array - [
 D Â] NFS: Allow NFSROOT debugging messages to be enabled dynamically - [
   Â] NFS: client needs to maintain list of inodes with active layouts - [
   Â] NFS: create and destroy inode's layout cache - [
   Â] nfsd4: fix hang on fast-booting nfs servers - [
CÂ Â 2]Â nfsd4: remove spkm3 - [
CÂ Â Â]Â nfsd: allow deprecated interface to be compiled out. - [
 D Â] nfsd: formally deprecate legacy nfsd syscall interface - [
   1] nfs: introduce mount option '-olocal_lock' to make locks local - [
   Â] NFS: Optimise the readdir searches - [
 D Â] NFS: rename nfs.upcall -> nfs.idmap - [
  NÂ] NFS: set layout driver - [
   3] NFSv4.1: pnfs: add LAYOUTGET and GETDEVICEINFO infrastructure - [
   Â] NFSv4.1: pnfsd, pnfs: protocol level pnfs constants - [
  N2] NFSv4.1: pnfs: filelayout: add driver's LAYOUTGET and GETDEVICEINFO infrastructure - [
  NÂ] NFSv4.1: pnfs: filelayout: introduce minimal file layout driver - [
CDNÂ]Â NFSv4.1: pnfs: full mount/umount infrastructure
Various others
- [
   Â] 9p: Add a Direct IO support for non-cached operations. - [
   Â] 9p: Implement TGETLOCK - [
   Â] 9p: Implement TLOCK - [
   Â] 9p: Implement TREADLINK operation for 9p2000.L - [
   Â] BKL: Remove BKL from NILFS2 - [
   Â] cifs: Allow binding to local IP address. - [
   1] cifs: convert cifs_tcp_ses_lock from a rwlock to a spinlock - [
   1] cifs: convert GlobalSMBSeslock from a rwlock to regular spinlock - [
   1] cifs NTLMv2/NTLMSSP ntlmv2 within ntlmssp autentication code - [
 D Â] fs/9p: Add access = client option to opt in acl evaluation. - [
   Â] fs/9p: Add xattr callbacks for POSIX ACL - [
   1] fs/9p: Implement create time inheritance - [
CÂ N1]Â fs/9p: Implement POSIX ACL permission checking function - [
   Â] fs/9p: Implement setting posix acl - [
   Â] fs: allow for more than 2^31 files - [
   Â] fs: allow for more than 2^31 files - [
   Â] fs: Do not dispatch FITRIM through separate super_operation - [
   Â] fs: Implement lazy LRU updates for inodes - [
   1] fs: inode split IO and LRU lists - [
   Â] fs: introduce a per-cpu last_ino allocator - [
   1] fs/locks.c: prepare for BKL removal - [
   Â] GFS2: Add "norecovery" mount option as a synonym for "spectator" - [
   Â] lockd: Mostly remove BKL from the server - [
 D Â] locks: remove fl_copy_lock lock_manager operation - [
   Â] net/9p: Add waitq to VirtIO transport. - [
   Â] nilfs2: add bdev freeze/thaw support - [
   1] nilfs2: do not allocate multiple super block instances for a device - [
  NÂ] nilfs2: make snapshots in checkpoint tree exportable - [
CÂ Â 1]Â NTLM auth and sign - Define crypto hash functions and create and send keys needed for key exchange - [
   Â] NTLM auth and sign - minor error corrections and cleanup - [
   1] NTLM auth and sign - Use kernel crypto apis to calculate hashes and smb signatures - [
 D Â] ocfs2: Add a mount option "coherency=*" to handle cluster coherency for O_DIRECT writes. - [
   Â] ocfs2: Add readahead support for CoW. - [
   Â] ocfs2: Add readhead during CoW. - [
CÂ Â Â]Â quota: Make QUOTACTL config be selected by its users - [
   Â] sunrpc: Make the /proc/net/rpc appear in net namespaces - [
  NÂ] sunrpc: The per-net skeleton - [
   Â] sunrpc: use seconds since boot in expiry cache - [
   1] UBIFS: introduce new flags for RO mounts - [
   Â] xfs: batch inode reclaim lookup - [
   1] xfs: Extend project quotas to support 32bit project ids - [
   Â] xfs: implement batched inode lookups for AG walking - [
 D Â] xfs: remove experimental tag from the delaylog option - [
   1] xfs: split inode AG walking into separate code for reclaim
Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in den vorangegangenen Kernel-Logs auf heise open. 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)