Kernel-Log – Was 3.6 bringt (1): Dateisysteme und Storage
Linux 3.6 bringt Sicherheitsverbesserungen für das Temp-Verzeichnis sowie Quota- und Backup-Funktionen für Btrfs. Über neue Schnittstellen kann der Kernel im Betrieb von Kapazitätsänderungen verwendeter Partitionen erfahren.
Am Freitag vergangener Woche hat Linus Torvalds die zweite Vorabversion von Linux 3.6 veröffentlicht [1]. Aufgrund seines Urlaubs erschien diese nicht wie gewohnt eine, sondern erst zwei Wochen nach der Freigabe der ersten Vorabversion [2]. Die Menge der seitdem in den Hauptentwicklungszweig [3] einfließenden Änderungen ist auf einem normalen Niveau.
Alle größeren Neuerungen für Linux 3.6 haben Torvalds und seine Mitstreiter wie üblich zu Beginn der Entwicklung [4] aufgenommen; es ist selten, dass die Kernel-Entwickler in der jetzt laufenden Stabilisierungsphase noch größere Änderungen integrieren oder Neuerungen wieder entfernen.
Das Kernel-Log [5] kann daher bereits jetzt einen umfassenden Überblick über die wichtigsten Neuerungen von Linux 3.6 geben. Der erfolgt wie gewohnt in einer Artikelserie, die nacheinander die verschiedenen Bereiche von Linux behandelt. Den Anfang macht die folgende Beschreibung der wichtigsten Neuerungen rund um Dateisysteme und die Unterstützung für Storage-Hardware; die später folgenden Artikel werden sich mit Grafiktreibern, Netzwerk-Unterstützung, Architektur-Code und Treibern für andere Hardware beschäftigen.
Btrfs
Das weiterhin experimentelle Btrfs-Dateisystem unterstützt nun Quotas für Subvolumes [6]; für diese separierten Bereiche innerhalb des Dateisystems wird sich so reglementieren lassen, wie viel Platz sie maximal belegen dürfen (u. a. 1 [7], 2 [8]). Eine weitere Btrfs-Neuerung ist "send/receive" (u. a. 1 [9]). Über diese Schnittstellen können Userspace-Programme die Unterschiede zwischen zwei Snapshots bestimmen und in einer Datei sichern beziehungsweise solche Sicherungen bei Bedarf zurückspielen; das ist vor allem für inkrementelle, atomare Backups interessant. Einige weitere Erläuterungen zu dieser auch von ZFS gebotenen Funktion [10] liefert ein LWN.net-Artikel [11]. Die Userspace-Werkzeuge [12] zur Verwendung des Ganzen finden sich derzeit noch im Entwicklerzweig der Btrfs-Dateisystemtools [13]; diesen und einige weitere Hinweise zu den Änderungen an Btrfs erläutert [14] Btrfs-Maintainer Chris Mason in seinem Haupt-Git-Pull-Request [15].
Ext4
Der Ext4-Code speichert Quota-Informationen laut Commit-Kommentar [16] nicht mehr in sichtbaren Dateien, sondern als versteckte Inodes bei den Metadaten; dadurch werde der Quota-Support eine Funktion erster Klasse ("first class supported feature"). Eine andere Änderung [17] am Ext4-Code kann die Performance beim Überschreiben von Dateien steigern, wie Theodore Ts'o erläutert [18].
Verfolgungssperre
Schon aus 1996 stammt die Grundidee zu einer mit Linux 3.6 umgesetzten Funktion [19], keinen Hard- und Softlinks in Verzeichnissen mit Sticky-Bit (etwa /tmp/) zu folgen, die in übergeordnete Verzeichnisse führen. Wie LWN.net in einem Artikel [20] erläutert, unterbindet diese via Sysctl einschaltbare Funktion einen Trick, den Angreifer häufig einsetzen, um sich über als Root laufende Hintergrunddienste höhere Rechte zu verschaffen.
Größenänderungen
Über eine neue Schnittstelle [21] können Userspace-Programme dem Kernel mitteilen [22], wenn sich die Größe einer verwendeten Partition ändert; dadurch kann der Kernel nun auch bei eingehängten oder anderweitig verwendeten Partitionen zur Laufzeit von Größenänderungen erfahren und die neuen Gegebenheiten fortan nutzen. Das Programm Resizepart wird die neue Kernel-Schnittstelle nutzen; es wurde in die zweite Vorabversion von Util-Linux 2.22-rc2 integriert [23], die kürzlich erschien [24].
Verschiedenes
Änderungen [25] am Software-RAID-Code des MD-Subsystems sollen die Performance von RAIDs verbessern, bei denen einige oder alle Datenträger SSDs sind.
Der Device Mapper kann nun [26] die RAID-10-Funktionen des MD-Subsystems verwenden.
Nach jahrelanger Entwicklung zog eine größere Patchsammlung [27] in den Memory-Management- und Dateisystem-Code von Linux 3.6 ein, durch den das Ablegen von Swap-Dateien auf NFS-Freigaben nun zuverlässig funktionieren soll (u. a. 1 [28]); das ist etwa für Thin Clients ohne lokale Datenträger interessant.
Der seit Linux 3.4 [29] zum Kernel gehörende Treiber virtio-scsi unterstützt nun [30] Hotplug, wodurch sich Datenträger bei virtualisierten Systemen nun zur Laufzeit hinzufügen oder entfernen lassen.
Mehr als eine Woche nach Ende des Merge Windows [31] hat Linus Torvalds noch den als Staging-Code markierten Fabric-Treiber tcm_vhost integriert [32], mit dem sich SCSI-Geräte eines Wirtssystems ohne viel Overhead in mit KVM virtualisierten Gastsystemen nutzen lassen [33]; Nicholas A. Bellinger hat einige Messergebnisse zur Technik veröffentlicht [34].
Der Treiber aacraid, der unter anderem Storage-Adapter von Adaptec anspricht, unterstützt nun [35] den "Async. (performance)"-Modus, den die Modelle der Serie 7 bieten.
Durch einige Umbauten am VFS (Virtual File System) und dem darauf aufbauenden Dateisystemcode konnten die Entwickler den Kernel-Daemon pdflush entfernen [36], der bislang [37] alle fünf Sekunden das Schreiben der Superblocks ausgelöst hat, wenn es Änderungen [38] an den dort gespeicherten Daten gab. Dieses regelmäßige Aufwachen war unter Stromsparaspekten ungeschickt.
Das "XFS status update for July 2012 [39]" erwähnt einige der in Linux 3.6 eingeflossenen Änderungen [40] an XFS; darunter Performance-Verbesserungen für den Inode Allocator.
Die kleinen Perlen
Die kleinen Perlen
Einige weitere Neuerungen finden sich in der folgenden Liste mit den englischen Commit [41]-Überschriften der jeweiligen Änderung. Die Einträge verlinken genau wie viele Verweise im vorangegangenen Text auf das Webfrontend [42] des von Linus Torvalds gepflegten Git-Zweigs auf Kernel.org [43]. Der über diese Links angezeigte Commit-Kommentar und der darunter ausgegebene Patch [44] liefern zahlreiche weitere Informationen zur jeweiligen Änderung.
Btrfs
- [
- [
- [
- [
- [
- [
- [
N4
] Btrfs: qgroup implementation and prototypes [51] - [
- [
- [
1
] Btrfs: rewrite BTRFS_SETGET_FUNCS [54]
File systems
- [
D 1
] ->atomic_open() prototype change - pass int * instead of bool * [55] - [
- [
N1
] CIFS: Add capability to send SMB2 negotiate message [57] - [
- [
1
] CIFS: Add session setup/logoff capability for SMB2 [59] - [
- [
N9
] CIFS: Add SMB2 status codes [61] - [
- [
- [
1
] CIFS: Add SMB2 support for is_path_accessible [64] - [
- [
- [
1
] CIFS: Add tree connect/disconnect capability for SMB2 [67] - [
N1
] CIFS: Make demultiplex_thread work with SMB2 code [68] - [
N1
] CIFS: Make transport routines work with SMB2 [69] - [
N9
] CIFS: Map SMB2 status codes to POSIX errors [70] - [
N1
] CIFS: Query SMB2 inode info [71] - [
D
] Documentation: Correct s_umount state for freeze_fs/unfreeze_fs [72] - [
D
] Documentation: get rid of write_super [73] - [
D 2
] don't pass nameidata to ->create() [74] - [
- [
- [
- [
- [
- [
2
] fs: Improve filesystem freezing handling [80] - [
D
] fs: make dumpable=2 require fully qualified path [81] - [
- [
- [
- [
- [
- [
3
] GFS2: Reduce file fragmentation [87] - [
- [
D 2
] kill struct opendata [89] - [
- [
- [
D 1
] make ->atomic_open() return int [92] - [
C 1
] NFS: Convert v2 into a module [93] - [
C
] NFS: Convert v3 into a module [94] - [
C 3
] NFS: Convert v4 into a module [95] - [
- [
C
] NFS: Simplify NFSv4.1 Kconfig [97] - [
- [
C
] pstore: Add console log messages support [99] - [
C N
] pstore: Add persistent function tracing [100] - [
- [
- [
D
] pstore/ram: Add ftrace messages handling [103] - [
D
] pstore/ram: Add some more documentation and examples [104] - [
D
] rbd: create pool_id device attribute [105] - [
D 2
] stop passing nameidata * to ->d_revalidate() [106] - [
D 5
] stop passing nameidata to ->lookup() [107] - [
D 1
] vfs: add i_op->atomic_open() [108] - [
D
] vfs: update documentation on ->i_dentry handling [109] - [
1
] xfs: Convert to new freezing code [110] - [
1
] xfs: support discontiguous buffers in the xfs_buf_log_item [111]
Storage
- [
- [
DN
] ATA: sata_mv: Add device tree support [113] - [
D 1
] blkcg: implement per-blkg request allocation [114] - [
- [
D
] dm stripe: support for non power of 2 chunksize [116] - [
- [
D 2
] dm thin: add read only and fail io modes [118] - [
- [
- [
- [
- [
- [
D
] mmc: dt: Add reg/interrupts to mmc.txt for clarity. [124] - [
D
] mmc: dt: Deduplicate binding docs by referencing mmc.txt [125] - [
DN
] mmc: sdhci-pxa: Add device tree support [126] - [
1
] MTD: NAND: JZ4740: Multi-bank support with autodetection [127] - [
- [
- [
- [
- [
- [
- [
C
] SCSI: Remove scsi_wait_scan module [134] - [
- [
C
] UBI: Change the default percentage of reserved PEB [136]
Ein "C" im Bereich zwischen den eckigen Klammern kennzeichnet Commits mit Änderungen an Kconfig-Dateien, welche die Konfigurationsoptionen samt der zugehörigen Hilfetexte enthalten. Mit "I" ausgezeichneten Patches rüsten neue PCI- oder USB-IDs nach; jene mit "D" verändern die dem Kernel beiliegende Dokumentation; Commits mit "N" legen neue Dateien an. Die Zahl vermittelt einen groben Eindruck zur Größe des Patches: Eine "1" kennzeichnet Patches, die inklusive Kommentar zwischen 10 und 20 KByte groß sind; Patches mit einer "9" sind 90 KByte oder größer
Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in den vorangegangenen Kernel-Logs [137] auf heise open [138]. Neue Ausgaben des Kernel-Logs [139] werden auf den Identi.ca [140]- und Twitter [141]-Konten "@kernellog" erwähnt; die englischen, bei den Kollegen von "The H [142]" erscheinenden Übersetzungen auf den Identi.ca [143]- und Twitter [144]-Konten "@kernellog2". Gelegentlich zwitschert der Autor des Kernel-Logs unabhängig davon über einige Kernel-Log-Themen bei Identi.ca [145] und Twitter [146] als "@kernellogauthor".
URL dieses Artikels:
https://www.heise.de/-1671225
Links in diesem Artikel:
[1] http://article.gmane.org/gmane.linux.kernel/1344692
[2] https://www.heise.de/news/Erste-Vorabversion-des-Linux-Kernels-3-6-1659349.html
[3] http://www.heise.de/glossar/entry/Hauptentwicklungslinie-397933.html
[4] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[5] http://www.heise.de/glossar/entry/Kernel-Log-397909.html
[6] https://www.heise.de/tests/Das-Dateisystem-Btrfs-221863.html
[7] http://git.kernel.org/linus/8ea05e3a4262b9e6871c349fa3486bcfc72ffd1a
[8] http://git.kernel.org/linus/bcef60f249034f69e89e544461cbfecb68975595
[9] http://git.kernel.org/linus/31db9f7c23fbf7e95026143f79645de6507b583b
[10] http://docs.oracle.com/cd/E19963-01/html/821-1448/gbchx.html
[11] http://lwn.net/Articles/506244/
[12] http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-progs.git;a=commitdiff;h=f1c24cd80dfd037407cdee85181646adca6dd5bb
[13] http://git.kernel.org/?p=linux/kernel/git/mason/btrfs-progs.git;a=summary
[14] http://article.gmane.org/gmane.linux.kernel/1333887
[15] http://www.heise.de/glossar/entry/Git-Pull-Request-397971.html
[16] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=7c319d328505b7781b65238ae9f53293b5ee0ca8
[17] http://git.kernel.org/linus/4bd809dbbf177ad0c450d702466b1da63e1b4b7e
[18] http://article.gmane.org/gmane.comp.file-systems.ext4/33519
[19] http://git.kernel.org/linus/800179c9b8a1e796e441674776d11cd4c05d61d7
[20] http://lwn.net/Articles/503660/
[21] http://git.kernel.org/linus/c83f6bf98dc1f1a194118b3830706cebbebda8c4
[22] http://thread.gmane.org/gmane.linux.kernel/1325114
[23] http://www.kernel.org/pub/linux/utils/util-linux/v2.22/v2.22-rc2-ChangeLog
[24] http://article.gmane.org/gmane.linux.kernel/1343738
[25] http://git.kernel.org/linus/9dedf60313fa4dddfd5b9b226a0ef12a512bf9dc
[26] http://git.kernel.org/linus/63f33b8dda88923487004b20fba825486d009e7b
[27] http://thread.gmane.org/gmane.linux.kernel/1326658
[28] http://git.kernel.org/linus/a564b8f0398636ba30b07c0eaebdef7ff7837249
[29] https://www.heise.de/hintergrund/Kernel-Log-Was-3-4-bringt-1-Infrastruktur-1559677.html
[30] http://git.kernel.org/linus/365a7150094114a0f8ef0b6164e6b04b519039e8
[31] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[32] http://git.kernel.org/linus/057cbf49a1f08297877e46c82f707b1bfea806a8
[33] http://wiki.qemu.org/Features/VirtioSCSI/TCM_Overview
[34] http://thread.gmane.org/gmane.linux.kernel.virtualization/16469
[35] http://git.kernel.org/linus/85d22bbf6787c240921539bba224eb221bfb8ee1
[36] http://git.kernel.org/linus/f0cd2dbb6cf387c11f87265462e370bb5469299e
[37] http://git.kernel.org/linus/6601fac822778aa6003aed37d8ba7acdc9a4f369
[38] http://thread.gmane.org/gmane.linux.kernel/1333054
[39] http://thread.gmane.org/gmane.linux.kernel/1341898
[40] http://thread.gmane.org/gmane.linux.kernel/1335249
[41] http://www.heise.de/glossar/entry/Commit-397925.html
[42] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=tree
[43] http://www.kernel.org/
[44] http://www.heise.de/glossar/entry/Patch-395546.html
[45] http://git.kernel.org/linus/02db0844beffc1c4e99d750be58ffb3ed95d6d62
[46] http://git.kernel.org/linus/6f72c7e20dbaea55f04546de69586c84a3654503
[47] http://git.kernel.org/linus/5d13a37bd5327220e13329943d1228acfbe5934a
[48] http://git.kernel.org/linus/96c3f4331a8c1cd0a58307e4ac7e73e09d7dab23
[49] http://git.kernel.org/linus/67c9684f48ea9cbc5e9b8a1feb3151800e9dcc22
[50] http://git.kernel.org/linus/df57dbe6bf73cc44305d81c24982a11da49b1f79
[51] http://git.kernel.org/linus/bed92eae26ccf280d1a2168b7509447b56675a27
[52] http://git.kernel.org/linus/630dc772ea51bca3ec6fac609f450cbe0cafd1d6
[53] http://git.kernel.org/linus/f4c738c2e7bc6d696b0d60155df7ea01684962b6
[54] http://git.kernel.org/linus/18077bb413687f96bd168efcfb2b8778529e3b74
[55] http://git.kernel.org/linus/47237687d73cbeae1dd7a133c3fc3d7239094568
[56] http://git.kernel.org/linus/b2b5ef5c8e89f19b68c174bf246f3ca212dbf0bc
[57] http://git.kernel.org/linus/ec2e4523fdba88317e06d0c7a88af3a0860447fc
[58] http://git.kernel.org/linus/9094fad1ed90caebd25b1bdec3c8982d079356ee
[59] http://git.kernel.org/linus/5478f9ba9a34d660eb3227dcd16314689c51f946
[60] http://git.kernel.org/linus/28ea5290d78a7fc87a4b4f7cedcaa662f5b8d977
[61] http://git.kernel.org/linus/b8030603d94a231c7fdee4c1ac369537f1fb8fb0
[62] http://git.kernel.org/linus/c95b8eeda3efcb419ea0a3f864cf99e32c038c21
[63] http://git.kernel.org/linus/25e266320caca88a4463385b6f4ef696111d2c9a
[64] http://git.kernel.org/linus/2503a0dba989486c59523a947a1dcb50ad90fee9
[65] http://git.kernel.org/linus/a0e731839dd461eee0fe2dc026e0965e961e2730
[66] http://git.kernel.org/linus/1a500f010fb2d121c58f77ddfde2eca1bde3bfcd
[67] http://git.kernel.org/linus/faaf946a7d5b79194358437150f34ab4c66bfe21
[68] http://git.kernel.org/linus/093b2bdad3221e3fae3c26d89387e7297a157664
[69] http://git.kernel.org/linus/2dc7e1c03316940dec899fa3206a595de000e99b
[70] http://git.kernel.org/linus/ddfbefbd393fb1a935bdf27cba5ad2eb24a76e75
[71] http://git.kernel.org/linus/be4cb9e3d4ef7af1aaf66cebab1391ff91b48beb
[72] http://git.kernel.org/linus/06fd516c1a504828780fcd81dfe21f94dec4c868
[73] http://git.kernel.org/linus/34e5053fbe88800f5c2c6cbc849abb5a9f390974
[74] http://git.kernel.org/linus/ebfc3b49a7ac25920cb5be5445f602e51d2ea559
[75] http://git.kernel.org/linus/8e8ad8a57c75f3bda2d03a4c4396a9a7024ad275
[76] http://git.kernel.org/linus/4d47603d9703e6fff8ff2618bc108d6280e2439d
[77] http://git.kernel.org/linus/eb04c28288bb0098d0e75d81ba2a575239de71d8
[78] http://git.kernel.org/linus/a51d9eaa41866ab6b4b6ecad7b621f8b66ece0dc
[79] http://git.kernel.org/linus/98c350cda2c14a343d34ea01a3d9c24fea5ec66d
[80] http://git.kernel.org/linus/5accdf82ba25cacefd6c1867f1704beb4d244cdd
[81] http://git.kernel.org/linus/9520628e8ceb69fa9a4aee6b57f22675d9e1b709
[82] http://git.kernel.org/linus/d9c95bdd53a8d9116d269c91ce3d151472e6bcd6
[83] http://git.kernel.org/linus/eee458936b52bd3a9ff0ff577313b637905fff08
[84] http://git.kernel.org/linus/a4d05d315a4fdf5ccb0dbf0ce38bac12d522d33e
[85] http://git.kernel.org/linus/9d46be294d12871adf4206f89168b14d27adb8b5
[86] http://git.kernel.org/linus/9e9ad5f408889db6038a59b38ede29ff1ba9ef2f
[87] http://git.kernel.org/linus/8e2e00473598dd5379d8408cb974dade000acafc
[88] http://git.kernel.org/linus/9e6c5829b07c9ba6668807631914efc557fab059
[89] http://git.kernel.org/linus/30d904947459cca2beb69e0110716f5248b31f2a
[90] http://git.kernel.org/linus/bc18f4b1c850ab355e38373fbb60fd28568d84b5
[91] http://git.kernel.org/linus/546f04ef716dd49521774653d8b032a7d64c05d9
[92] http://git.kernel.org/linus/d95852777bc8ba6b3ad3397d495c5f9dd8ca8383
[93] http://git.kernel.org/linus/ddda8e0aa8b955e20cb80908189bfa154ab54837
[94] http://git.kernel.org/linus/1c606fb74c758beafd98cbad9a9133eadeec2371
[95] http://git.kernel.org/linus/89d77c8fa8e6d1cb7e2cce95b428be30ddcc6f23
[96] http://git.kernel.org/linus/a427b9ec4eda8cd6e641ea24541d30b641fc3140
[97] http://git.kernel.org/linus/e3074507d93a0b7f1430dec7c6addb307d4f30da
[98] http://git.kernel.org/linus/bc452b4b65bd589083a7a7ba4f14f85dfc8454fa
[99] http://git.kernel.org/linus/f29e5956aebafe63f81e80f972c44c4a666e5c7f
[100] http://git.kernel.org/linus/060287b8c467bf49a594d8d669e1986c6d8d76b0
[101] http://git.kernel.org/linus/a3f5f075c2e2c52c9c656c54ea77ceff5b2e1e25
[102] http://git.kernel.org/linus/b5d38e9bf1b0c4db19e336b59b38dfb5d28bf1bf
[103] http://git.kernel.org/linus/a694d1b5916a486ce25fb5f2b39f2627f7afd5f3
[104] http://git.kernel.org/linus/958502d836cf18c6f39bdb787b76d53839e4d8aa
[105] http://git.kernel.org/linus/9bb2f334b9b5f2eb6030b7988b7f2302c3115bbb
[106] http://git.kernel.org/linus/0b728e1911cbe6e24020727c3870628b9653f32a
[107] http://git.kernel.org/linus/00cd8dd3bf95f2cc8435b4cac01d9995635c6d0b
[108] http://git.kernel.org/linus/d18e9008c377dc6a6d2166a6840bf3a23a5867fd
[109] http://git.kernel.org/linus/049b3c10eecd0a5f3605fa3cd13f638593213ccb
[110] http://git.kernel.org/linus/d9457dc056249913a7abe8b71dc09e427e590e35
[111] http://git.kernel.org/linus/372cc85ec6820c91b4eeff303880f25cb5a00ab5
[112] http://git.kernel.org/linus/ff0173c1a3ce003e361a8045ded905c285c3f08f
[113] http://git.kernel.org/linus/97b414e119ccc7216e29c3bd62fe1a1797f21404
[114] http://git.kernel.org/linus/a051661ca6d134c18599498b185b667859d4339b
[115] http://git.kernel.org/linus/33d07c0dfab902a7c5420587984497dc05ab5c9c
[116] http://git.kernel.org/linus/eb850de608cc22e0199b3797cd5c0076bae6cda0
[117] http://git.kernel.org/linus/542f90381422676544382d4071ba44a2de90a0c1
[118] http://git.kernel.org/linus/e49e582965b3694f07a106adc83ddb44aa4f0890
[119] http://git.kernel.org/linus/f9a8e0cd261fc05820539b0ea613686a32795406
[120] http://git.kernel.org/linus/55f2b8bdb0c7387eb2dc645b9ecbe5d0faa6b54e
[121] http://git.kernel.org/linus/b1354cbb5bfce28f2e1ed28d77b362dfdfca638d
[122] http://git.kernel.org/linus/166a2967b45ede2e2e56f3ede3cd32053dc17812
[123] http://git.kernel.org/linus/f54a9d0e59c4bea3db733921ca9147612a6f292c
[124] http://git.kernel.org/linus/ed3efc1ccc4421865b64d902cd410f6733c85a49
[125] http://git.kernel.org/linus/4efafee02ff604627234d42a3ff9f331e3605c9d
[126] http://git.kernel.org/linus/b650352dd3df36164e3427bff3f33bc06ac47642
[127] http://git.kernel.org/linus/1471d41a5bdfdf83ed1e5c2148a9763e64b1f53b
[128] http://git.kernel.org/linus/b17459c05000fdbe8d10946570a26510f86ec0f6
[129] http://git.kernel.org/linus/3a8b788f61a5b85f3a3a4630dc5f4c13b91e1bba
[130] http://git.kernel.org/linus/eb47aa2c2145f106a9ba2f95696b16520f1c8119
[131] http://git.kernel.org/linus/173edbb2c326ce4839bae8caa868fe83ce46dda3
[132] http://git.kernel.org/linus/f3d8af9e27c8341222b9cce50b870b87239a1629
[133] http://git.kernel.org/linus/efb6c717b764e77cadc20bc9d9ffdf16bc1eedf5
[134] http://git.kernel.org/linus/6072609d9bb91ff54aee3ef29304bd5b4fc88aae
[135] http://git.kernel.org/linus/2bd37f0fde99cbf8b78fb55f1128e8c3a63cf1da
[136] http://git.kernel.org/linus/54de1f1c44c3522dbdc2201be1f65e733526de51
[137] http://www.heise.de/open/kernel-log-3007.html
[138] http://www.heise.de/open/
[139] http://www.heise.de/glossar/entry/Kernel-Log-397909.html
[140] http://identi.ca/kernellog
[141] http://twitter.com/kernellog
[142] http://www.h-online.com
[143] http://identi.ca/kernellog2
[144] http://twitter.com/kernellog2
[145] http://identi.ca/kernellogauthor
[146] http://twitter.com/kernellogauthor
[147] mailto:thl@ct.de
[148] mailto:thl@ct.de
Copyright © 2012 Heise Medien