zurück zum Artikel

Viel bewegt – Die Neuerungen von Linux 2.6.27

| Thorsten Leemhuis

Neue WLAN- und Webcam-Treiber sowie zahlreiche Änderungen an anderen Treibern und der Kernel-Infrastruktur verbessern die Hardware-Unterstützung und den Funktionsumfang von Linux erheblich.

Kernel-Log-Logo

Zwölfeinhalb Wochen nach der Freigabe des Linux-Kernels 2.6.26 veröffentlichte Linus Torvalds nun mit der Version 2.6.27 [1] die nächste aus dem Hauptentwicklungszweig [2] von Linux hervorgegangene Kernel-Version. Die insgesamt 1.131.171 neuen, veränderten oder verschobenen Zeilen Quellcode bringen viele Neuerungen, von denen auch einfache Linux-Anwender über kurz oder lang profitieren, selbst wenn sie sich mit der zentralen Instanz ihres Linux-Systems normalerweise nicht näher auseinandersetzen.

So verbessern zwei neue sowie verschiedene überarbeitete WLAN-Treiber [3] die WLAN-Unterstützung von Linux erheblich. Nach der Aufnahme des USB-Webcam-Treibers uvcvideo [4] bei 2.6.26 [5] erweitert 2.6.27 mit dem Webcam-Treiber gspca [6] zudem erneut die Unterstützung von Webcams unter Linux – zukünftige Linux-Kernel und darauf aufbauende Distributionen können eine Vielzahl von WLAN-Chips und Webcams "einfach so" ansprechen, ohne dass sich der Anwender um Treiber-Konfiguration oder -Installation kümmern muss. Eine Vielzahl weiterer mehr [7], weniger [8] oder noch weniger [9] wichtige Treiberanpassungen sowie zahlreiche Änderungen [10] an der die Treiber umgebenden Infrastruktur erweitern oder verbessern die Hardware-Unterstützung des Linux-Kernels.

Hinzu gesellen sich wie mit jeder neuen Linux-Version der Hauptentwicklungslinie zahlreiche Verbesserungen an der Infrastruktur des Kernels selbst. So unterstützt Linux mit der Version 2.6.27 erstmals das für Flash-Speicher geeignet Dateisystem UBIFS [11]parallel arbeiteten [12] die Kernel-Hacker [13] weiter am Ext3-Nachfolgers Ext4, der bald reif für den täglichen Einsatz sein soll. Einige von Open-Source-Puristen initiierte Umstrukturierungen [14] verändern die Kernel-interne Handhabung von Firmware, während zahlreiche Aufrufe des Big Kernel Lock (BKL) weichen mussten, um Performance und Skalierbarkeit von Linux weiter zu verbessern. Hinzu gesellen sich zahlreiche Optimierungen [15] für die Nutzung des Systemschlafzustands ACPI S3 (Standby/Bereitschaft) sowie ein neues, khibernate genanntes Framework [16], mit dem sich das System komplett schlafen legen lässt (Hibernate/Ruhezustand). Doch auch das sind nur einige der wichtigsten [17] Neuerungen aus einer Unmenge weiterer mehr [18] oder weniger [19] wichtigen Änderungen an der Infrastruktur beim Linux-Kernel 2.6.27.

Das detaillierte Changelog [20] listet alle Anpassungen seit der Version 2.6.26 im Detail für all jene auf, die es ganz genau wissen wollen und auch genug Zeit zum Studium des mehrere Megabyte großen Dokuments mitbringen. Das folgende Kernel-Log [21] bietet einen Überblick über die Neuerungen der jüngsten Kernel-Version, die mit den in den kommenden Wochen und Monaten erwarteten Distributionen Fedora 10 (Cambridge), OpenSuse 11.1 und Ubuntu 8.10 (Intrepid Ibex) schon bald auf einer Vielzahl von Systemen die Arbeit erledigen wird. Zusätzlich befassen sich einige Artikelabschnitte des Kernel-Logs mit wichtigen Ereignissen während der 2.6.27-Entwicklung und geben einen Ausblick auf 2.6.28:

Die im Artikel erwähnten Neuerungen bei Infrastruktur und Treibern sind jene, die für einen Großteil der Linux-Anwender relevant sind. Eine Liste mit zahlreiche weiteren mehr oder weniger wichtigen Änderungen findet sich im Anhang:

Änderungen an der Infrastruktur [35]

Änderungen an Treibern und der sie umgebenden Infrastruktur [43]

Im Artikel finden sich zudem diverse Verweise auf das Glossar von heise online, das einige allgemeine und zeitlose Hintergrundinformationen zum Linux-Kernel und dessen Entwicklung bereithält:

[59]

Nachdem seit Linux 2.6.22 [60] fast jede neue Kernel-Version der Hauptentwicklungslinie größere Verbesserungen für die WLAN-Unterstützung gebracht hat, macht auch die nun freigegebene Linux-Version da keine Ausnahme [61] und bringt zwei neue sowie einige erweiterte und verbesserte WLAN-Treiber.

Erstmals dabei ist der Treiber ath9k [62], der zahlreiche der neueren und nach IEEE-Standardentwurf 802.11n funkenden WLAN-Chips von Atheros [63] anspricht. Den noch jungen Treiber hatte der seit einigen Monaten bei Atheros beschäftigte und zuvor bereits durch seine Arbeit an WLAN-Treibern- und Infrastruktur für Linux bekannte Entwickler Luis "mcgrof" Rodriguez erst einige Tage nach der Freigabe von Linux 2.6.26 der Öffentlichkeit präsentiert [64]. Rodriguez und viele andere Entwickler stürzten sich förmlich auf den Treiber, um ihn für die Aufnahme in den Kernel fit zu machen; mit Erfolg, denn bereits zirka drei Wochen nach der ersten Veröffentlichung von ath9k nahmen die Kernel-Hacker den Treiber in den Hauptentwicklungszweig auf [65], aus dem nun Linux 2.6.27 hervorging.

Zu den vom Treiber ath9k unterstützten Atheros-Chips zählen die WLAN-Bausteine AR5418+AR5133, AR5416+AR5133, AR5416+AR2133, AR9160, AR9280 und AR9281. Sie finden sich in einigen neueren Note- und Netbooks sowie auf manchen PCI/PCIe-Karten und PC-Cards/Minicards – das Wiki zum Treiber [66] listet einige solcher Produkte von Belkin, D-Link, Linksys, NEC und Netgear auf. Bislang arbeitet ath9k aber nur im Client-Modus (Station Mode/STA); laut der umfangreichen ToDO-List [67] arbeiten die Entwickler bereits an Mesh- und AP-Unterstützung. Konstantendefinitionen und Kommentare im Quelltext deuten ferner an, dass langfristig auch der für Tools wie Wireshark oder Kismet nötige Monitor-Mode unterstützt werden soll.

Genau wie ath9k ist auch der für 802.11n-Chips von Intel zuständige Treiber iwlagn erstmals dabei. Er ist jedoch nicht komplett neu, sondern basiert zum Teil auf dem Code des für Intels 802.11n-Chips der ersten Generation zuständigen Treibers iwl4965. Letzteren ersetzt der neue Treiber nicht nur, sondern bringt zusätzlich Unterstützung für Intels WLAN-Module aus der Familie "Wireless WiFi Link 5000AGN [68]" – Intel hatte sie zusammen mit der Centrino-2-Plattform diesen Sommer eingeführt, und die WLAN-Module finden sich in allen Centrino-2-Notebooks. Die von einigen der Intel-Funkmodule gebotene Wimax-Unterstützung beherrscht der neue WLAN-Treiber allerdings nicht; diese lässt sich über Patches und Programme nachrüsten, an denen Intel im Open-Source-Projekt Linuxwimax.org [69] arbeitet.

Zahlreiche Änderungen gab es am Treiber ath5k [70] für ältere Atheros-WLAN-Chips. Durch sie überlässt [71] ath5k nun einige 802.11n-Chips dem neueren ath9k-Treiber und kann nun auch die in der ersten Generation [72] des Asus Eee PC verbauten Atheros-WLAN-Chips AR2425 ansteuern (1 [73], 2 [74]). Für den kam bislang auf vielen Distributionen ein Snapshot aus dem Hauptentwicklungszweig des Treibers madwifi [75] zum Einsatz. Durch diese und andere Verbesserungen lösen ath5k und ath9k den mit einem proprietären Kern versehenen Madwifi-Treiber wie vorgesehen [76] langsam ab. Wie lange es mit madwifi überhaupt noch weitergeht, muss sich zeigen; die zum Veröffentlichungszeitpunkt dieses Artikels neueste Madwifi-Version 0.9.4 ist bereits einige Monate alt und lässt sich bei manchen mit Linux 2.6.26 ausgestatteten Distributionen nur mit Hilfe von Patches aus dem Madwifi-Entwicklerzweig kompilieren.

Auch den seit Linux 2.6.23 [77] in Linux enthaltenen Treiber rtl8187 [78] für den gleichnamigen USB-WLAN-Chip von Realtek überarbeiteten die Kernel-Hacker, sodass der Treiber in Zukunft auch die neuere Chip-Variante RTL8187B anspricht (1 [79], 2 [80], 3 [81], 4 [82], 5 [83], 6 [84], 7 [85]). Die Entwickler verbesserten ferner die Unterstützung für die Stromsparmechanismen bei den neueren Treibern für WLAN-Module von Intel. Neben diesen neuen und überarbeiteten WLAN-Treibern sowie zahlreichen Verbesserungen am WLAN-Stack Mac80211 bringt 2.6.27 auch noch eine größere Renovierung des rfkill-Frameworks mit (u. a. 1 [86], 2 [87], 3 [88], Dokumentation [89]). Sie soll die Interaktion zwischen Hardware, Kernel und Userspace-Programmen verbessern, wenn der Anwender die bei Notebooks zu findenden Schiebeschalter oder Tastenkombinationen zum Ein- und Ausschalten von WLAN oder Bluetooth betätigt.

[90]

Linux 2.6.27 bringt erstmals das für Flash-Speichermedien ohne Wear Leveling gedachte und auf die mit 2.6.22 [91] eingeführten Unsorted Block Images [92] (UBI) aufsetzende Dateisystem Ubifs [93] (Commit [94], Dokumentation [95], Hintergrundartikel [96]) mit. Das Ext4-Dateisystem beherrscht mit 2.6.27 nun erstmals Delayed Allocations (1 [97], 2 [98]). Das soll die Performance steigern und eine Fragmentierung von Dateien eindämmen; eine detaillierte Beschreibung zu den Hintergründen dieser Technik findet sich in einem [99] der zahlreichen Vorträge zum Linux-Kernel und dessen Umfeld [100] des diesjährigen Ottawa Linux Symposium (OLS). Der Ext3-Nachfolger bleibt aber fürs Erste weiter als nicht für den Produktiveinsatz geeignetes Entwicklerdateisystem gekennzeichnet; lange dürfte das aber wohl nicht mehr so bleiben.

Linux-Kernel herunterladen Neue Linux-Versionen sind über die in Amerika [101] und Europa [102] stationierten Server von Kernel.org erhältlich; deren Inhalt spiegeln auch zahlreiche deutsche Mirror [103]. Linux-Anwender, die sich nicht intensiv mit dem Kernel und dessen Umfeld beschäftigen, sollten neue Linux-Treiber und -Kernel aber normalerweise nicht auf eigene Faust einspielen, sondern auf die Vorarbeit der Linux-Distributoren zurückgreifen. (...mehr... [104])

Mit AXFS [105] (Advanced XIP filesystem), btrfs [106] und nilfs2 [107] (New Implementation of a Log-structured Filesystem Version 2]) streben indes zahlreiche weitere für Flash-Medien, SSDs oder Festplatten optimierte Dateisysteme über kurz oder lang die Aufnahme in den Linux-Kernel an – zusammen mit anderen in Entwicklung befindlichen Dateisystemen wie Tux3 [108] oder dem weiter vor sich hin köchelnden [109], aber nicht wieder richtig in Gang kommenden Reiser4 bieten die nächste Monate und Jahre damit genug Stoff für endlose Debatten und Geschwindigkeitstest für die immer wieder gern ausführlichst diskutierte Frage nach dem "besten Dateisystem".

[110]

Mehrere mit 2.6.27 integrierte Patches [111] verändern die Handhabung der unter anderem von vielen LAN-, WLAN- und SCSI-Chips benötigten Firmware erheblich [112]. Einige dieser Patches modifizieren vorwiegend ältere Treiber, sodass diese genau wie die meisten modernen Treiber die Firmware über den Firmware-Loader von Initrd oder aus dem Root-Dateisystem nachladen, statt die Firmware direkt in das Kernel-Modul oder den Kernel einzubinden – Letzteres lässt sich aber weiterhin konfigurieren [113]. Durch andere Patches [114] lassen sich die Firmware-Images nun jedoch auch an das Kernel-Image anhängen, damit speziell die früh im Bootvorgang benötigten Treiber diese nun auch über den Firmware-Loader nachfordern können, noch bevor Initrd oder Root-Dateisystem eingebunden sind; bislang mussten solche Treiber die Firmware direkt enthalten.

All diese Änderungen waren alles umstritten und resultierten in länglichen, teils hitzig geführten Diskussionen [115]. Insbesondere die beiden Verwalter des Netzwerksubsystems und der Netzwerktreiber sträubten sich nachhaltig gegen die Änderungen, sodass Netzwerktreiber wie tg3 oder bnx2 vorerst weiter die Firmware direkt enthalten. Dadurch können Open-Source-Puristen und Linux-Distributionen auch in naher Zukunft wohl keinen universellen Kernel kompilieren, der zwar alle auf Firmware angewiesenen Treiber enthält, nicht aber die häufig nur als vorkompiliertes Binary ohne Quellcode erhältliche Firmware selbst – das hatten einige Open-Source-Verfechter auf einer Fedora-Mailingliste [116] mehrfach lautstark gefordert und den früheren Red-Hat-Entwickler David Woodhouse schließlich zur Entwicklung der jetzt in den Hauptentwicklerzweig eingepflegten Änderungen bewogen.

[117]

Auch die die Treiber umgebenen Subsyssteme bieten einige neue Funktionen, auf die Anwender und Treiber-Programmierer in Zukunft zurückgreifen können. Neu in Linux 2.6.27 ist die vom Verwalter des Netzwerk-Subsystems David S. Miller größtenteils selbst programmierte "Linux TX Multiqueue Implementation [118]". Durch sie bietet der Netzwerk-Stack nun grundlegende Funktionen für Netzwerk-Hardware mit mehreren Transmit Queues. Viele der modernen WLAN-Chips bieten sie, um etwa Video- oder Audio-Daten bevorzugt zu übermitteln [119].

Umfangreiche Änderungen [120] gab es bei der Infrastruktur rund um die Nutzung der Systemschlafzustände. Treiber können durch eine der Änderungen [121] nun beim Wechsel in oder aus dem Bereitschaftsmodus (ACPI S3/Suspend to RAM) andere Arbeiten durchführen als vor oder nach der Nutzung des Ruhezustands (Hibernate/Suspend to Disk); das soll einige der grundlegenden Probleme rund um die beiden Schlafzustände beseitigen. Der bereits im Rahmen des heise-open-Artikels "Tiefe Einblicke – Informationen in den Vorträgen vom Ottawa Linux Symposium (OLS) 2008" [122] erwähnte Vortrag "Suspend-to-RAM in Linux – State of the Union Address [123]" beschreibt die Hintergründe für diese Änderungen und liefert einige weitere Informationen rund um ACPI und den Code zur Nutzung der Systemschlafzustände.

Auch den mit 2.6.27 aufgenommene "Block layer data integrity support" (Commit [124], Dokumentation [125], Hintergrundartikel [126]) erklärt einer [127] der OLS-Vorträge [128] detailliert – durch diese Technik sollen insbesondere Storage-Controller für Server mit passendem Treiber besser sicherstellen können, ob Daten auch korrekt auf den Datenträgern landen. Das SCSI-Subsystem unterstützt dazu nun das SCSI disk (SBC) Data Integrity Field [129].

Zahlreiche Änderungen [130] eliminieren Aufrufe des Big Kernel Lock (BKL) in den höheren Schichten des Kernels oder verlagern diese weiter nach unten – also beispielsweise aus den verschiedenen Treibersubsystemen in die Hardwaretreiber selbst. Letztere sollen sich dann möglichst individuell und nur wenn unbedingt nötig um die im Mehrprozessorbetrieb unerlässliche Absicherung kritischer Codebereiche kümmern. Durch dieses feiner abgestufte Locking soll der Kernel gerade auf Systemen mit vielen Prozessoren besser skalieren; aber auch auf Desktop-PCs dürften diese Änderungen ab und an Performance-Vorteile bieten. Langfristig wollen die Kernel-Entwickler das Big Kernel Lock komplett entfernen [131] – die jetzt aufgenommenen Änderungen sind aber nur die ersten Schritte dieses Vorhabens, dessen komplette Umsetzung wohl mehrere Jahre in Anspruch nehmen dürfte.

[132]

Welche Treiber geändert wurden Über das Git-Web-Frontend auf Kernel.org lassen sich auch Informationen zu Änderungen an einzelnen Dateien des Linux-Kernels aufrufen – so lässt sich beispielsweise herausfinden, ob es Neuerungen an den auf dem eigenen System eingesetzten Treibern gab. Dazu muss man allerdings wissen, wo sich die Treiberdateien im Quellcodebaum des Linux-Kernels finden. Bei den zumeist stark auf Modulen setzenden Kerneln der Distributionen helfen häufig die Ausgaben des Programms modinfo bei der Suche: [VERBATIM0] Liegt ein kompiliertes Modul etwa in [...]/kernel/drivers/net/e100.ko, dann findet sich dessen Sourcecode im Linux-Quellcodearchiv normalerweise im Verzeichnis drivers/net/ in Dateien mit ähnlichem Namen – etwa e100.c im Falle des für Intel-100-MBit-Netzwerkhardware zuständigen Treibers e100. Andere Module wie der für Intels PCI-Gigabit-LAN-Chips zuständige Treiber e1000 haben hingegen ein Verzeichnis für sich allein. Kennt man die ungefähre Position des Treiber-Quellcodes, navigiert man im Git-Webinterface über die Tree-Ansicht [133] zu den jeweiligen Quellcode-Dateien und ruft über den Link history eine Übersicht über die jüngsten Änderungen an den zugehörigen Dateien oder dem ganzen Verzeichnis auf. Im Verzeichnis für die Netzwerktreiber [134] lassen sich so beispielsweise die Änderungen am Treibercode von e100 [135] (drivers/net/e100.c) und e1000 [136] (drivers/net/e1000/) anzeigen und näher unter die Lupe nehmen.

Neben den bereits erwähnten Verbesserungen bei der WLAN-Unterstützung gab es eine Unmenge neuer und erweiterter Treiber. So pflegten Torvalds und seine Zuarbeiter unter anderem eine überarbeitete Variante der weitgehend mit Hilfe von Reverse Engineering entstandenen Webcam-Treiber-Sammlung gspca [137] ein (unter anderem 1 [138], 2 [139], 3 [140]). Sie eignet sich für Kameras von verschiedensten Herstellern [141] – darunter zahlreiche Modelle von Aiptek, Creative, Logitech oder Philips. Zusammen mit dem für kurz vor Toresschluss [142] in Linux 2.6.26 [143] integrierten USB-Video-Treiber uvcvideo [144] unterstützt der Linux-Kernel somit in Zukunft viele gängige Webcams von Haus aus; bislang mussten Linux-Anwender die beiden Treiber nicht selten umständlich nachinstallieren.

Ganz knapp vor Ende des Merge Window [145] von Linux 2.6.27 hat Linus Torvalds vollkommen unerwartet das ISDN-Framework mISDN [146] (modulares ISDN) in die jetzt veröffentlichte Kernel-Version aufgenommen (1 [147], 2 [148], 3 [149], 4 [150], 5 [151], 6 [152]). Der Kernel bekommt damit nach mehreren Jahren Entwicklungszeit endlich einen deutlich überarbeiteten, modular aufgebauten und auf moderne Einsatzzwecke wie Telefonanlagen-Software abgestimmten ISDN-Treiber. Er kümmert sich vor allem um HFC-Chips der Cologne Chip AG, die sich auf einer ganzen Reihe passiver ISDN-Karten befinden und beliebt sind, um ISDN-Telefone direkt anzubinden. Auch Asterisk greift über ein mISDN-eigenes API auf die Dienste von mISDN zu.

Die im Kernel enthaltenen und vom Projekt Alsa [153] (Advanced Linux Sound Architecture) gewarteten Audio-Treiber sind mit 2.6.27 nun ungefähr auf dem Stand [154] der Alsa-Treiber-Version 1.0.17. Zu den Neuerungen [155] dieser Version zählen unter anderem ein Treiber für [156] für die Xonar D1 von Asus, eine größere Renovierung [157] des Treibers snd-azt3328, Unterstützung [158] für die Audio-Hardware der ASUS Eee**PC 90x sowie zahlreiche neue ASoC-(ALSA-System-on-Chip-)Treiber.

Wie mit praktisch jeder neuen Kernel- oder Alsa-Treiber-Version erweiterten die Entwickler die Whitelists für die automatische Anwendung Hardware-spezifischer Workarounds, sodass die Treiber diese bei so manchen PCs, Notebooks und Mainboards nötigen Sonderbehandlungen für die Audio-Codecs auf mehr Hardware als zuvor automatisch vornehmen (etwa 1 [159], 2 [160]). Linux-Anwender, deren Audio-Hardware erst mit Hilfe solcher über Modul-Parameter beim Laden des Sound-Treibers manuell aktivierbaren Workarounds funktioniert, sollten diese Informationen daher zusammen mit Angaben zur verwendeten Hardware an die Alsa-Entwickler senden. Diese können die Whitelists dann entsprechend erweitern – davon profitiert man langfristig nicht nur selber, sondern tut auch allen anderen Besitzern der gleichen Hardware einen großen Gefallen, denn auch deren Audio-Hardware funktioniert dann in Zukunft einfach, ohne dass sie die verschiedenen Workarounds umständlich durchprobieren und manuell konfigurieren müssen.

Für die insbesondere bei vielen neuen Netbooks, Notebooks und Mainboards von Asus häufiger anzutreffenden Gigabit-LAN-Chips AR8121, AR8113 und AR8114 von Atheros haben die Kernel-Entwickler den Treiber atl1e [161] aufgenommen. Ein größerer Patch [162] rüstet ferner Unterstützung für die Broadcom-LAN-Chips BCM57711 und BCM57711E im Treiber bnx2x nach. Der e1000-Treiber kümmert sich fortan nicht mehr [163] um PCIe-Gigabit-Chips von Intel – für die ist jetzt ausschließlich der neuere Treiber e1000e zuständig, der nun auch Intels Gigabit-NIC-Chip 82576 ansprechen kann [164].

Der Treiber sorgte bei Beta-Testern und Entwicklern in der zweiten Septemberhälfte indes für allerlei Hektik, denn er stand in den Vorabversionen von 2.6.27 unter Verdacht [165], gelegentlich den nichtflüchtigen Speicherbereich (NVM) von Intel-Netzwerkchips auf Boards mit ICH8, ICH9 oder ICH10 zu überschreiben. Teilweise gingen dadurch "nur" die MAC-Adresse oder andere im NVM gespeicherte Konfigurationsdaten verloren – ab und an wurde der Speicher aber auch so weit überschreiben, dass der Netzwerkchip gar nicht mehr funktionierte. Die genaue Fehlerursache haben die Entwickler bislang nicht gefunden; vermutlich ist aber nicht der Treiber selbst, sondern ein Fehler an anderer Stelle die Ursache für das Problem. Durch eine nach dem RC8 von 2.6.27 eingepflegte Änderung [166] am Treiber verhindert dieser nun ein ungewolltes Überschreiben des NVMs.

Die Kernel-Entwickler haben zahlreiche, im wesentlichen von Intel-Entwicklern programmierte Änderungen in den Hauptentwicklungszweig [167] von Linux eingepflegt, die den nichtflüchtigen Speicher (NVM) von Intel-Netzwerkchips vor versehentlichem Überschreiben schützen. Das soll das seit knapp zwei Wochen breit diskutierte Problem [168] der bisherigen Vorabversionen von 2.6.27 umschiffen, das teilweise Intel-Netzwerkchips auf Boards unbrauchbar machte, die auf die Netzwerkfunktionen der Intel-Southbridges ICH8, ICH9 oder ICH10 zurückgreifen.

Den Hauptschutz soll ein bereits vor einigen Tagen eingepflegter Patch [169] für den Treiber gewährleisten, durch das der Treiber bereits kurz nach dem Laden den Schreibschutz für den NVM setzt. Zahlreiche 24 Stunden später eingepflegte Änderungen (1 [170], 2 [171], 3 [172], 4 [173], 5 [174], 6 [175]) verbessern den Schutz, korrigieren kleinere Fehler oder erleichtern die Fehlersuche. Die eigentliche, vermutlich nicht im e1000e-Treiber zu suchende Ursache für das ungewollte Überschreiben des nichtflüchtigen Speichers haben die Entwickler aber wohl noch nicht gefunden. Einige Distributoren liefern bereits Kernel mit, die den Schutz enthalten – darunter die kürzlich veröffentlichte zweite Beta [176] von OpenSuse 11.1 sowie der Kernel im Entwicklerzweig von Fedora (Rawhide)

Durch größere Änderungen [177] am Treiber fujitsu-laptop unterstützt dieser mehr Fujitsu-Siemens-Notebooks als zuvor und arbeitet besser mit Userspace-Anwendungen zur Regelung der Displayhelligkeit zusammen. Neu sind die Treiber compal-laptop [178] und hp-wmi [179], mit denen sich einige herstellerspezifische Funktionen bei von HP und Compal gefertigten Notebooks nutzen lassen; beide Treiber leiten etwa Events beim Betätigen der Schalter oder Funktionstasten zum Ein- und Ausschalten von Funkverbindungen weiter. Ebenfalls primär für Notebooks interessant ist der neue Treiber sdricoh_cs [180], der den MM- und SD-Card-Controller Bay1 von Ricoh anspricht.

[181]

Die bislang erwähnten Neuerungen bei Infrastruktur und Treibern sind die, die für einen Großteil der Linux-Anwender relevant sind – bevor dieser Artikel jedoch auf andere für die Linux-Entwicklung wichtige Vorgänge während der 2.6.27-Entwicklung [182] eingeht und von da über ein Kurzfazit [183] zu einem Ausblick auf 2.6.28 [184] übergeht, sollen im folgenden zahlreiche weitere, alles andere als unwichtige Neuerungen bei Treibern und Infrastruktur Erwähnung finden. So haben die Kernel-Hacker das Aufwachen aus dem Bereitsschaftsmodus (ACPI S3) bei Systemen beschleunigt [185], die den AHCI-Treiber zum Ansprechen der Systemdatenträger nutzen. Ein anderer Patch [186] an eben diesem Treiber hat den Datendurchsatz beim Autor der Änderung um durchschnittlich zehn Prozent gesteigert. Ferner ist die Unterstützung für Enclosure Management [187] im AHCI-Treiber neu, was das Auffinden von (defekten) Festplatten im Server-Rack erleichtern kann.

Treibereien In der Unmenge der für Linux 2.6.27 vorgenommenen Änderungen finden sich eine Unmenge an Patches, die die zahlreichen in den Linux-Quellen enthaltenen Treiber verändern. Diese Patches verbessern die Hardware-Unterstützung, erweitern den Funktionsumfang oder korrigieren schlichtweg Fehler. Die in den nebenstehenden Absätze auf dieser und den vorangegangenen Seiten erwähnten Treiberneuerungen sind nur die allerwichtigsten; viele weitere solcher Änderungen finden sich am Ende des Artikels in zwei thematisch grob sortierten Listen mit Kurzbeschreibungen der jeweiligen Änderung (1 [188], 2 [189]). Diese verlinken zum jeweiligen Commit [190] im Webinterface des Verwaltungssystems für den Linux-Quellcode, wo sich in der Regel weitere Informationen zu den Hintergründen der jeweiligen Änderung sowie der Patch selbst findet.

Größere Umstrukturierungen [191] gab es bei 2.6.27 am Quellcode für den Direct Rendering Manager (DRM). Durch sie soll soll sich der für 2.6.28 oder 2.6.29 geplante GPU-Memory-Manager GEM und das Kernel-based Modesetting (KMS) besser integrieren lassen. Mit 2.6.27 zum Linux-Kernel hinzugestoßen [192] ist ferner der Treiber hso für HSDPA/HSUPA-Karten von Option sowie der Input-Treiber bcm5974 [193] für die Touchpads im Macbook Air und Pro Penryn. Den Treiber für Intels I/OAT [194] (I/O Acceleration Technology) erweiterten [195] die Kernel-Hacker um Unterstützung für die I/OAT-Spezifikation 3.0. Zahlreiche Änderungen [196] gab es auch an den Treibern für FireWire-Hardware.

Linux 2.6.27 bringt zudem bereits jetzt Unterstützung für die Audio- und Storage-Einheiten von Intels Ibex-Peak-Chipsätzen [197] mit (1 [198], 2 [199], 3 [200]), obwohl diese nach derzeitigen Informationen erst im dritten Quartal 2009 zusammen mit den bislang [201] unter den Codenamen Lynnfield und Havendale bekannten Nehalem-CPUs für Mainstream-Desktops in den Handel kommen sollen. Und auch für die ersten, in den kommenden Wochen erwarteten Core-i7- und Xeon-CPUs mit Nehalem-Kern gab es bereits einige Änderungen wie die Unterstützung bei Oprofile [202] und coretemp [203].

Einige Treiber sind mit 2.6.27 allerdings auch rausgeflogen – etwa die i2c-Treiber, i2c-i810, i2c-prosavage und i2c-savage4 [204], die andere Treiber [205] seit Längerem ersetzen. Auch für den jetzt entfernten [206] OSS-Treiber trident gibt es schon länger einen moderneren Treiber im Kernel. Rausgeflogen [207] ist auch der angeschlagene ISDN-Treiber auerswald, dessen Aufgaben mittlerweile ein auf libusb aussetzender Treiber im Userspace erledigt.

[208]

Nach Jahren der Entwicklung haben die Lockless-Pagecache-Patches [209] (1 [210], 2 [211], 3 [212]) inklusive der get_user_pages (1 [213], 2 [214], 3 [215], 4 [216], 5 [217], 6 [218]) von Novell-Entwickler Nick Piggin endlich den Weg in den Hauptentwicklungszweig gefunden; die Patches beschleunigen [219] einige Vorgänge im Speichersubsystem, was sich gerade auf großen Systemen positiv auf die Performance auswirken soll. Einige zumeist von SGI-Entwicklern eingebrachte Änderungen sollen ferner dafür sorgen, dass Linux auf Systemen mit bis zu 4096 CPUs rundläuft (1 [220], 2 [221]).

Neu [222] im Hauptentwicklerzweig ist das Debugging- und Test-Framework Ftrace [223] (Function Tracer). Es unterstützt Linux- und System-Entwickler bei der Suche nach Codebereichen, in denen das System bei der Arbeit viel Zeit verbringt – diese Hot-Spots lassen sich dann gezielt optimieren, um Performance oder Reaktionsgeschwindigkeit zu steigern. Das Frontend für das ältere Sysprof [224] (System-wide Linux Profiler) lässt sich über ein Ftrace-Plugin weiter nutzen (1 [225], 2 [226], 3 [227], 4 [228], 5 [229]). Neu bei 2.6.27 ist auch das teilweise auf Ftrace aufsetzende und von Intel- und Nouveau [230]-Entwicklern gestartete Mmiotrace (1 [231], 2 [232], 3 [233], Dokumentation [234]), mit dem sich Memory Mapped IO (MMIO) verfolgen [235] lässt. Das ist etwa für Debugging oder Reverse Engineering interessant – eben genau dafür hatten die Entwickler des Grafiktreibers Nouveau [236] Mmiotrace entwickelt, um den proprietären Nvidia-Treiber für Linux bei der Arbeit besser beobachten zu können. Neu ist ferner auch die Tracing-Infrastruktur Tracehooks [237], auf die das seit Langem um die Aufnahme in den offiziellen Kernel buhlende Utrace [238] in Zukunft aufsetzen soll.

Wer häufiger Kernel konfiguriert und kompiliert, wird an dem mit 2.6.27 aufgenommenen [239] Tool Diffconfig Gefallen finden, mit dem sich zwei Kernel-Konfigurationsdateien komfortabel vergleichen lassen. Speziell für Programmierer von Userspace-Anwendungen mit mehreren Threads dürften zahlreiche von Ulrich Drepper eingebrachte Patches interessant sein. Sie rüsten neue Syscalls nach, mit denen sich einige bekannte Sicherheitsrisiken bei POSIX file descriptors umschiffen lassen. Drepper, der die Standard-C-Library Glibc [240] verwaltet, beschreibt die Hintergründe der Änderungen sowie die geplante Nutzung in der Glibc detailliert in seinem Blog [241]; auch LWN.net hatte sich vor Monaten schon [242] ausführlich mit den damals noch in Planung befindlichen Patches beschäftigt.

Mit 2.6.27 wieder dabei ist die SMP-nice for group scheduling [243] genannte Änderung am Completely Fair Scheduler (CFS) – die war ursprünglich schon für 2.6.26 vorgesehen, musste dann aber wegen Qualitätsmängeln vorübergehend wieder weichen. Der Ruhezustand lässt sich durch einige Änderungen (1 [244], 2 [245]) nun auch über kexec [246] ausführen – das Ganze nennen die Entwickler khibernation [247] und soll einige Vorteile [248] im Vergleich zur bisherigen Methode mit Software-Suspend (Swsusp) bieten, ist aber noch recht experimentell.

Die Kernel-Entwickler haben für 2.6.27 ferner zahlreiche Verbesserungen [249] an der Virtualisierungslösung KVM aufgenommen – darunter die nicht ausschließlich, aber vorwiegend für Virtualisierungslösungen wie KVM interessanten mmu-notifiers [250]. Neu dabei ist auch die Unterstützung für die Hypervisor-Schnittstelle paravirt_ops [251] auf der IA64-Architektur von Intels Itanium (1 [252], 2 [253], 3 [254], Dokumentaiton [255]) sowie die zur Migration von Gästen auf andere Hostsysteme nötige Save/Restore-Unterstützung [256] in Xen. Auch die Xen-DomU-Unterstützung für x86-64-Systeme ist erstmals dabei (1 [257], 2 [258], 3 [259], 4 [260], ) – bislang unterstützte der im Kernel seit 2.6.23 [261] enthaltene Xen-Code nur den Betrieb eines x86-32-Linux unter einem Xen-Hypervisor.

Die Crypto-Unterstützung im Kernel beherrscht nun die Algorithmen RIPEMD-128 und RIPEMD-160 (1 [262], 2 [263]) und arbeitet bei der Hash-Erzeugung auf Wunsch asynchron [264]. Weiter vorangetrieben haben die Kernel-Hacker die Zusammenlegung von Quellcodedateien, die sich für x86-32- und x86-64-Systeme ähneln. Der Filter für SCSI-Kommandos lässt sich bei 2.6.27 nun pro Gerät individuell und zur Laufzeit vom Systemadministrator konfigurieren [265]; bislang war dieser starr und erlaubte dem Anwender zwar das Ansprechen von Brennern und Co., aber eben nichts, womit Anwender potenziell Schaden hätten anrichten können.

Über die verbesserte Infrastruktur für hugetbl (Huge Tables) lassen sich nun auch die von neueren AMD-Prozessoren unterstützten Gigabyte-Pages nutzen (1 [266], 2 [267]); damit sich parallel zu diesen auch die mittelgroßen Page-Größen noch nutzen lassen gab es einige Änderungen an der der hugetbl-Infrastruktur (1 [268], 2 [269], 3 [270], 4 [271]). Neu ist ferner die Unterstützung für AMDs IOMMU (1 [272], 2 [273], 3 [274], 4 [275]).

Nicht nur all die Verbesserungen und neuen Features, sondern auch einige Aufräumarbeiten und Umstrukturierungen sind indes für die zahlreichen laut diffstat [276] während der 2.6.27-Entwicklung veränderten Zeilen Quellcode mitverantwortlich. Rausgeflogen [277] ist etwa die seit Längerem nicht mehr gepflegte Unterstützung für die v850-Architektur. Beinahe 4 MByte groß ist zudem der Patch [278], der wie erwartet [279] das Verzeichnis arch/ppc/ entfernt – um die verschiedenen derzeit unterstützten Power- und PowerPC-Architekturen kümmert sich nun ausschließlich der bereits unter arch/powerpc/ zu findende Code. Erheblich beigetragen zu den vielen neuen und entfernten Zeilen Quellcode haben auch Umstrukturierungen beim MIPS-Code [280] sowie zahlreiche Patches, die die Include-Dateien für einige der unterstützen Architekturen im Quellcode-Baum umherschieben (siehe etwa Commits für ARM [281], IA64 [282], Power [283] oder Sparc [284]). Mit aktivierter Rename-Detection in Git zeigt diffstat daher etwas weniger Änderungen an.

[285]

Entwicklungslinien des Linux-Kernels Die Kernel-Hacker entwickeln den Linux-Kernel im Rahmen der 2.6-Serie stetig weiter. Dabei scheuen sie auch nicht vor umfangreichen Änderungen zurück. Es wird daher auf absehbare Zeit keinen 2.7-Entwicklerzweig geben, aus dem irgendwann eine Linux-Version 2.8.0 oder 3.0.0 hervorgeht, so wie Linux 2.6.0 aus dem 2.5-Entwicklerzweig entstand; stattdessen pflegen die Entwickler mehrere Kernel-Serien für verschiedene Anwenderkreise parallel. Die Hauptentwicklungslinie stellen die Versionen mit drei durch Punkte getrennten Nummern (2.6.x, also etwa 2.6.26) dar. [...] Parallel zur Hauptentwicklung pflegen die Verwalter der Stable-Kernel-Serie die beiden jeweils neusten Versionen der Hauptentwicklungslinie weiter und kennzeichnen die Überarbeitungen durch eine zusätzliche Zahl (2.6.x.y, beispielsweise 2.6.24.10 oder 2.6.25.8). (...mehr... [286])

Zahlreiche andere während der 2.6.27-Entwicklung geführte Debatten sind für die weitere Entwicklung von Linux von Bedeutung. So bekräftigte Linus Torvalds in einer Diskussion [287] auf der Linux-Kernel Mailing List (LKML), dass ihn nichts dazu bewegen könnte, zum alten Entwicklungsmodell mit einer "unstable-series" zurückzukehren. Das derzeitige Modell sei so viel besser, dass es nicht wert sei, über die Eröffnung einer 2.7-Serie überhaupt nachzudenken ("I'm not going back to the old model. The new model is so much better that it's not even worth entertaining as a theory to go back."). Im Rahmen dieser Diskussion ließ der Linux-Vater jedoch durchblicken, dass er über eine Anpassung des Nummerierungsschema nachdenkt und Versionsbezeichnungen wie Linux 2008.10 erwägt. Es war erwartet worden, dass darüber auf dem Mitte September abgehaltenen Kernel Summit 2008 diskutiert würde – in den Berichten von der Konferenz findet sich aber bislang keine Informationen, ob das Thema überhaupt zur Sprache kam.

Während der 2.6.27-Entwicklung bremste Torvalds indes einige Entwickler und forderte sie auf, sich in der zweiten Phase des Entwicklungszyklus [288] gefälligst wie vorgesehen auf das Beseitigen von Fehlern zu konzentrieren; größere Änderungen sollten für die nächste Kernel-Version zurückgestellt werden. Wenn sich die Kernel-Hacker in Zukunft daran halten, könnte das die Entwicklungszeit neuer Linux-Versionen etwas reduzieren – zuletzt sind aus der ursprünglich für zirka sechs Wochen angesetzten Stabilisierungsphase meist eher neun oder mehr geworden, weil einige der Fehler in den während des Merge-Window [289] eingepflegten Änderungen nur langsam korrigiert werden und größere, spät aufgenommene Änderungen teilweise neue Fehler auslösen.

Auf dem Kernel Summit waren die Kernel-Entwickler sogar kurz davor, eine Verkürzung des Entwicklungszyklus auf insgesamt sechs Wochen zu beschließen – letztendlich nahmen sie von der Idee dann doch wieder Abstand. Auch die Unterstützung von ISA-Hardware sowie anderer veralteter und kaum mehr gepflegter Code (beispielsweise Video4Linux der ersten Generation) soll bis auf Weiteres im Kernel verbleiben und nicht rausfliegen, wie es Alan Cox vor der Entwicklerkonferenz gefordert hatte. Weitere Informationen zu diesen und anderen auf dem Kernel Summit 2008 diskutierten Themen finden sich in zwei Kernel-Logs auf heise open, die die bekannt gewordenen Informationen vom ersten [290] und zweiten [291] Tag zusammenfassen.

[292]

Im dem kürzlich von der Linux Foundation [293] veröffentlichten Dokument "How to Participate in the Linux Community [294]" erklärt LWN.net-Gründer und -Autor Jon Corbet zahlreiche Hintergründe im Kernel-Entwicklungsprozess. Dabei gibt er viele Tipps, wie man in die Kernel-Entwicklung einsteigt und dabei Anfängerfehler im Code und bei der Zusammenarbeit mit den etablierten Kernel-Hackern vermeidet. Das dürfte nicht nur Hobby-Programmierern eine große Hilfe beim Einstieg in die Linux-Kernel-Community sein, sondern soll insbesondere mit der Linux- und Open-Source-Entwicklung nicht vertrauten Unternehmen einen Einblick in den Entwicklungsprozess von Linux vermitteln. Das scheint auch mehr als überfällig, denn in der Vergangenheit strauchelten schon diverse Hardware-Hersteller und deren Treiber-Programmierer heftigst beim Versuch, in die Linux- und Open-Source-Entwicklung einzusteigen. Corbet und die Linux Foundation sind zudem nicht die einzigen, die sich dem Thema widmen: Andi Kleen hatte kürzlich in dem Vortrag "On submitting kernel patches [295]" auf dem OLS 2008 [296] eine ganz ähnliche, jedoch etwas kürzere Übersicht zum Thema gegeben.

Wie wichtig Linus Torvalds stabile Schnittellen für Userland-Anwendungen sind, zeigt eine während der 2.6.27-Entwicklung geführte Diskussion [297] auf der LKML. Durch eine für 2.6.28 geplante Änderung arbeiteten die bisherigen Version des X.org-Touchtreibers synaptics nicht mehr korrekt; das war aber nicht Schuld des Kernels, sondern ein schwerer, bislang unentdeckter Fehler im Touchtreiber, der erst durch die Kernel-Änderung ans Tageslicht kam. Auf Drängen und unter Mithilfe von Torvalds haben die Kernel-Entwickler den auslösenden Kernel-Patch schließlich trickreich [298] modifiziert, damit auch die bisherigen Versionen des Treibers mit zukünftigen Kernel-Versionen ungestört zusammenarbeiten.

[299]

Wer seine Kernel bislang selbst kompiliert und installiert, sollte gründlich darüber nachdenken, ob er diese Praxis in Zukunft beibehält oder nicht doch auf die vorkompilierten Kernel eines Distributors umsteigt. Die Kernel-Entwickler geben nach längeren Debatten um die früher nur sporadisch vorgenommene explizite Auszeichnung von Fixes für Sicherheitslücken bei der Freigabe neuer Kernel mittlerweile meist gar nicht mehr an, ob Patches auch Sicherheitslücken korrigieren. Vielmehr legen die Betreuer der Stable-Series Anwendern von Kernel.org-Kerneln in der Freigabe-Mail seit der Veröffentlichung von 2.6.25.13 in der Regel mit Worten wie "Any users of the 2.6.25 kernel series should upgrade to this version" ein Update auf die neu herausgegebenen Versionen nah. Details zu den Änderungen fänden sich im Git-Webinterface oder dem Changelog.

Schaut man dort genauer hin, findet man in manchen, aber eben nicht allen der mit diesen Worten angekündigten Versionen Korrekturen für Sicherheitslücken. Bei 2.6.25.13 etwa stolpert man über ein als CVE-2008-2750 diskutiertes Sicherheitsproblem im PPP-Code des Kernels, das Fedora, OpenSuse und Ubuntu bereits kurz zuvor über Kernel-Updates behoben hatten. Auf Sicherheit bedachte Anwender von selbstkompilierten Kerneln sollten daher am besten jede neue Version des jeweiligen Stable-Zweigs einspielen, was deutlich weniger Arbeit machen dürfte, als eine zeitaufwendige und praktisch nur von Sicherheitsexperten verlässlich durchführbare Suche nach Sicherheitskorrekturen in den Änderungen neuer Kernel-Versionen. Für das Gros der Anwender dürfte ohnehin ein vorkompilierter und vom Distributor gepflegter Kernel der verwendeten Linux-Distribution die eindeutig beste Wahl darstellen – zu einem solchen rieten auch so mache Kernel-Entwickler im Rahmen der erwähnten Diskussionen.

[300]

[301]

Linux 2.6.27 bringt wieder eine Fülle von Neuerungen, von denen alle Linux-Anwender profitieren, auch solche, die sich mit dem Kernel normalerweise nicht näher auseinander setzen (wollen). Gerade auf Centrino-2-Notebooks und den zahlreichen in den letzten Monaten neu vorgestellten Netbooks dürfte die jüngste Version des Linux-Kernels durch die neuen oder verbesserten WLAN-Treiber und andere Änderungen deutlich runder laufen als ihre Vorgänger; doch auch für viele andere Systeme bietet der neue Kernel so manch interessante Neuerung.

Wer den Kernel 2.6.27 ohne viel Aufwand auf seinem System installieren will, wartet am besten noch ein wenig und steigt dann auf die in den kommenden Wochen und Monaten erwarteten neuen Versionen von OpenSuse und Ubuntu um – sie werden den neuen Kernel mitbringen und bieten über ihre Entwicklerzweige sowie die mit Vorabversionen von 2.6.27 ausgestatteten Alphas, Betas und RCs der Distributionen bereits jetzt einen Vorgeschmack auf 2.6.27. Eine solche nutzt auch das Fedora-Projekt im Entwicklerzweig und den aktuellen Vorabversionen von Fedora 10; vermutlich erhält Fedora 9 die nun vorgestellte Linux-Version aber bereits als Update, bevor Fedora 10 fertig wird.

[302]

Direkt nach der Freigabe von 2.6.27 beginnt nun die erste, normalerweise zirka zwei Wochen lange und Merge Window genannte Phase im Entwicklungszyklus [303] des Linux-Kernels, in der Torvalds die umfangreicheren Änderungen für die nächsten Version in den Hauptentwicklungszweig [304] aufnimmt. Für die Aufnahme bereits vorbereitet sind etwa zahlreiche Patches, durch die weitere Treiber – darunter viele SCSI-Treiber – nun ebenfalls auf den Firmware-Loader zum Anfordern der Firmware-Binaries zurückgreifen.

Entwicklungszyklus des Linux-Kernels [...] Durch den öffentlichen Entwicklungsprozess und einen tiefen Blick in den Kaffeesatz ist heise open und der von der Linux-Foundation gewartete Radarschirm des Linux Weather Forecast [305] bereits bei der Vorstellung einer neuen Kernel-Version dazu in der Lage, einige Neuerungen zu benennen, die die darauf-folgende Version mitbringen dürften. [...] (...mehr... [306])

Die Netzwerk-Entwickler haben vier neue Treiber für die Aufnahme in 2.6.28 vorbereitet [307]. Sie rüsten die Unterstützung für Netzwerkchips von Atheros, Cisco, Jmicron und Qlogic nach. Intel-Entwickler Arjan van de Ven hat derweil verschiedene Verbesserungen in der Hinterhand, die den Startprozess beschleunigen [308] und die Leistungsaufnahme senken [309] sollen.

Einige Entwickler würden gerne das AXFS-Dateisystem [310] in 2.6.28 sehen – es sieht aber derzeit so aus, als müsste AXFS noch einige Male durch den vor der Aufnahme neuer Dateisysteme üblichen und eher strengen Begutachtungs- und Verbesserungsprozess laufen, sodass eine Aufnahme für 2.6.29 derzeit eher unwahrscheinlicher scheint. Das gilt auch für die Unterstützung zum Betrieb des Kernels als privilegierte Xen-Domain (Dom0), so sich die Xen-Entwickler denn in den nächsten Tagen nicht noch so richtig ins Zeug legen. Noch nicht mal ansatzweise benutzbar sind derweil die in Arbeit befindlichen Verbesserungen [311] an den rt2x00-Treibern, damit diese auch die neueren Ralink-WLAN-Chips rt2860 und rt2870 ansprechen – darauf hatte Linus Torvalds selbst gedrängt [312], nachdem er vor einigen Wochen einen mit solch einem Ralink-Chip ausgestatteten EeePC von Asus gekauft hatte. Bis die Treiber so weit sind, lassen sich diese WLAN-Chips mit vom Herstellern bereitgestellten und unter GPL2 stehenden Treibern zur Mitarbeit unter Linux überreden.

Wie üblich wird das Kernel-Log [313] in der c't und auf heise open in den kommenden Wochen über die wichtigsten in die Hauptentwicklungslinie [314] von Linux integrierten Neuerungen und andere Entwicklungen im Umfeld des Linux-Kernels berichten. Dazu zählen auch neue Versionen der Stable-Kernel-Series [315] (2.6.x.y), die in den nächsten Wochen den ein oder anderen Fehler korrigieren dürften, den die Kernel-Hacker und Tester bei der Entwicklung von 2.6.27 übersehen haben. Zu Weihnachten oder zum Jahresbeginn dürfte Torvalds dann die Linux-Version 2.6.28 freigeben. Deren Änderungen wird dann wie üblich ein längeres Kernel-Log wie dieses auf heise open [316] detailliert beschreiben. (thl [317]/c't)

Anhang:

Liste weiter Änderungen an der Infrastruktur [318]

Liste weiter Änderungen an Treibern und der sie umgebenden Infrastruktur [326]

Die im voranstehenden Artikel erwähnten Neuerungen der jüngsten Linux-Version stellen nur eine Auswahl der bedeutsamsten Änderungen dar – die sprichwörtliche Spitze des Eisbergs, der bei jeder neuen Linux-Version im Hauptentwicklungszweig aus Tausenden von Commits [338] im Quellcodeverwaltungsystem besteht. Zahlreiche weitere ebenfalls wichtige Neuerungen – sozusagen die etwas unterhalb der Eisbergspitze – finden sich im Folgenden als thematisch grob sortierte Liste mit einer Kurzbeschreibung zur Änderung. Bei ihr handelt es sich zumeist um die (teilweise leicht angepassten) englischen Überschriften des Commits, die auf die jeweilige Änderung im Webfrontend des Quellcodeverwaltungssystems verlinkt; dort finden sich in der Regel detailliertere Informationen und Hintergründe zur Anpassung sowie der Patch selbst.

[339]Architecture code:

x86:

Others:

[399]Filesystems, VFS, Block, DM, MD:

[416]Memory:

[419]Virtualization:

[437]Security/Crypto/LSM/SELinux:

[444]Documentation:

[446]Various:

[454]Powermanagement, ACPI and PCI:

[482]Notebook- and PDA specific:

[485]USB:

[498]Input Subsystem (input devices like keyboard, mice or joysticks):

[509]Storage

General:

Libata (newer drivers for Parallel- and Serial-ATA controllers):

IDE (alternative/older drivers mainly for Parallel-ATA controllers):

SCSI:

Various:

[539]Network:

General:

LAN/WAN specific:

WLAN specific:

[589]Graphics:

[599]V4L:

[644]Audio:

V4L (Video-4-Linux):

[681]Hardware-Monitoring/I2C/EDAC/Watchdog:

[696]Various:

Einen der voranstehenden Auflistung ähnlichen Überblick sowie eine Kurzbeschreibung der wichtigsten Änderungen von 2.6.27 pflegen auch die Kernelnewbies in ihrem Wiki [734]. Wer es noch detaillierter möchte, durchkämmt das mehrere Megabyte große Changelog [735], das die zu jedem einzelnen Commit [736] im Quellcodeverwaltungssystem von Linux gehörenden Kommentare enthält, welche den jeweiligen Patch [737] des Commits beschreiben. Alternativ kann man sich auch im Git-Webinterface [738] durch die Kernel-Quellen und deren jüngste Änderungen arbeiten; dort hat man zum jeweiligen Kommentar auch gleich den zugehörenden Patch [739] im Zugriff. (thl [740]/c't) (thl [741])


URL dieses Artikels:
https://www.heise.de/-221594

Links in diesem Artikel:
[1] http://thread.gmane.org/gmane.linux.kernel/742570
[2] http://www.heise.de/glossar/entry/Hauptentwicklungslinie-397933.html
[3] http://www.heise.de/open/artikel/116387/1
[4] http://linux-uvc.berlios.de/
[5] https://www.heise.de/news/Linux-Kernel-2-6-26-freigegeben-181153.html
[6] http://www.heise.de/open/artikel/116387/3
[7] http://www.heise.de/open/artikel/116387/3
[8] http://www.heise.de/open/artikel/116387/4
[9] http://www.heise.de/open/artikel/116387/8
[10] #subsystems-u2
[11] http://www.heise.de/open/artikel/116387/2
[12] http://www.heise.de/open/artikel/116387/2
[13] http://www.heise.de/glossar/entry/Kernel-Hacker-397919.html
[14] #firmware-u2
[15] #subsystems-u2
[16] #moreintern-u4
[17] http://www.heise.de/open/artikel/116387/2
[18] #moreintern-u4
[19] http://www.heise.de/open/artikel/116387/7
[20] http://www.eu.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.27
[21] http://www.heise.de/glossar/entry/Kernel-Log-397909.html
[22] http://www.heise.de/open/artikel/116387/1
[23] http://www.heise.de/open/artikel/116387/2
[24] #firmware-u2
[25] #subsystems-u2
[26] http://www.heise.de/open/artikel/116387/3
[27] http://www.heise.de/open/artikel/116387/4
[28] #moreintern-u4
[29] http://www.heise.de/open/artikel/116387/5
[30] #hackinghowto-u5
[31] #trust-u5
[32] http://www.heise.de/open/artikel/116387/6
[33] #summary-u6
[34] #trends-u6
[35] http://www.heise.de/open/artikel/116387/7
[36] #indepth-arch-u7
[37] #indepth-fs-u7
[38] #indepth-mem-u7
[39] #indepth-virt-u7
[40] #indepth-security-u7
[41] #indepth-docs-u7
[42] #indepth-inframisc-u7
[43] http://www.heise.de/open/artikel/116387/8
[44] #indepth-acpi-u8
[45] #indepth-laptop-u8
[46] #indepth-usb-u8
[47] #indepth-input-u8
[48] #indepth-storage-u8
[49] #indepth-net-u8
[50] #indepth-graphics-u8
[51] #indepth-v4l-u8
[52] #indepth-sound-u8
[53] #indepth-hwmon-u8
[54] #indepth-drvmisc-u8
[55] http://www.heise.de/glossar/entry/Linux-Kernel-und-Treiber-herunterladen-und-installieren-397911.html
[56] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[57] https://www.heise.de/glossar/entry/Linux-Kernel-Serien-und-Entwicklungslinien-397913.html
[58] http://www.heise.de/glossar/entry/Changesets-Commits-Diffs-Merges-und-Patches-397921.html
[59] 
[60] https://www.heise.de/tests/Die-Neuerungen-von-Linux-2-6-22-222117.html
[61] http://wireless.kernel.org/News/kernel-2.6.27
[62] http://wireless.kernel.org/en/users/Drivers/ath9k
[63] http://www.atheros.com/
[64] https://www.heise.de/news/Kernel-Log-Ath9k-Treiber-fuer-neue-Atheros-WLAN-Chips-Diskussionen-um-Nvidia-Treiber-188675.html
[65] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f078f209704849c86bd43c0beccfc1f410ed1c66
[66] http://wireless.kernel.org/en/users/Drivers/ath9k
[67] http://wireless.kernel.org/en/users/Drivers/ath9k#TODO
[68] http://www.intel.com/network/connectivity/products/wireless/adapters/5000/index.htm
[69] http://linuxwimax.org/
[70] http://madwifi.org/wiki/About/ath5k
[71] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b1a5215004130689aeee9e522585c879d3b71472
[72] https://www.heise.de/ratgeber/Ein-Blick-auf-Hard-und-Software-des-Eee-PC-1900879.html
[73] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0bacdf303f72a3ed34252934114bc04e79222687
[74] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=e5a4ad0dda8f79a984ba6391af65274b482b6703
[75] http://madwifi.org/wiki/About/MadWifi
[76] https://www.heise.de/news/Linux-WLAN-ath5k-loest-langfristig-MadWifi-ab-177887.html
[77] https://www.heise.de/tests/Die-Neuerungen-von-Linux-2-6-23-222157.html
[78] http://linuxwireless.org/en/users/Drivers/rtl8187
[79] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c44ac0b9855c62b5ec8af5935124cfbe6654a32d
[80] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d1e11af51657d18222bef9cc15591f8c0f289186
[81] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e7d414ff21a7e0b00295e838c004ff1de5fba6ce
[82] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f8a08c34265b59710a8fc049911f487477c19fab
[83] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6f7853f3cbe457067e9fe05461f56c7ea4ac488c
[84] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5c036b217a1fe3ae0616e9c43c6bcd13b3c134b6
[85] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0e25b4ef220f6ef4eed120543182385b13005db9
[86] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f3146aff7f283c8699e0c97df6307a705786eeba
[87] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=801e49af4c1a9b988ba0d25de2b368c99c3bf2b3
[88] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ebef2008082f579d8a40cc92e868fe8bf1296a60
[89] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/rfkill.txt;hb=HEAD
[90] 
[91] https://www.heise.de/tests/Die-Neuerungen-von-Linux-2-6-22-222117.html
[92] http://www.linux-mtd.infradead.org/doc/ubidesign/ubidesign.pdf
[93] http://www.linux-mtd.infradead.org/doc/ubifs.html
[94] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e51764a3c2ac05a23a22b2a95ddee4d9bffb16d
[95] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e56a99d5a42dcb91e622ae7a0289d8fb2ddabffb
[96] http://lwn.net/Articles/276025/
[97] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=64769240bd07f446f83660bb143bb609d8ab4910
[98] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d2a1763791a634e315ec926b62829c1e88842c86
[99] http://ols.fedoraproject.org/OLS/Reprints-2008/kumar-reprint.pdf
[100] https://www.heise.de/tests/Tiefe-Einblicke-Informationen-zu-Linux-in-den-Vortraegen-vom-OLS-221570.html
[101] http://www.kernel.org/
[102] http://www.eu.kernel.org/
[103] http://kernel.org/mirrors/
[104] http://www.heise.de/glossar/entry/Linux-Kernel-und-Treiber-herunterladen-und-installieren-397911.html
[105] https://www.heise.de/news/Kernel-Log-Neue-Stable-und-Vorab-Kernel-neue-Dateisysteme-Ubuntu-8-10-mit-2-6-27-198503.html
[106] https://www.heise.de/news/Kernel-Log-Neue-Btrfs-Version-und-Stable-Kernel-WLAN-Treiber-fuer-2-6-27-aufgemischt-194050.html
[107] https://www.heise.de/news/Kernel-Log-Neue-Stable-und-Vorab-Kernel-neue-Dateisysteme-Ubuntu-8-10-mit-2-6-27-198503.html
[108] https://www.heise.de/news/Kernel-Log-Dateisystem-Tux3-angekuendigt-neues-rund-um-X-org-191445.html
[109] http://thread.gmane.org/gmane.linux.kernel/715139/
[110] 
[111] http://thread.gmane.org/gmane.linux.kernel/706523/
[112] http://lwn.net/Articles/284932/
[113] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d172e7f5c67f2d41f453c7aa83d3bdb405ef8ba5
[114] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4d2acfbfdf68257e846aaa355edd10fc35ba0feb
[115] http://thread.gmane.org/gmane.linux.kernel/706523/
[116] http://thread.gmane.org/gmane.linux.redhat.fedora.devel/86558/
[117] 
[118] http://vger.kernel.org/~davem/davem_seattle08.pdf
[119] http://lwn.net/Articles/289137/
[120] http://lwn.net/Articles/274008/
[121] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1eede070a59e1cc73da51e1aaa00d9ab86572cfc
[122] https://www.heise.de/tests/Tiefe-Einblicke-Informationen-zu-Linux-in-den-Vortraegen-vom-OLS-221570.html
[123] http://ols.fedoraproject.org/OLS/Reprints-2008/brown-reprint.pdf
[124] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ba1ba12eeef0aa7113beb16410ef8b7c748e18b
[125] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c1c72b59941e2f5aad4b02609d7ee7b121734b8d
[126] http://lwn.net/Articles/290141/
[127] http://ols.fedoraproject.org/OLS/Reprints-2008/petersen-reprint.pdf
[128] https://www.heise.de/tests/Tiefe-Einblicke-Informationen-zu-Linux-in-den-Vortraegen-vom-OLS-221570.html
[129] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=af55ff675a8461da6a632320710b050af4366e0c
[130] http://thread.gmane.org/gmane.linux.kernel/706483
[131] http://lwn.net/Articles/283066/
[132] 
[133] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree
[134] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=drivers/net;hb=HEAD
[135] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=history;f=drivers/net/e100.c;hb=HEAD
[136] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=history;f=drivers/net/e1000;hb=HEAD
[137] http://mxhaard.free.fr/
[138] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=63eb9546dcb5e9dc39ab88a603dede8fdd18e717
[139] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2e5c1ec8865abd81e24a394918c7ba315e0b7b70
[140] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a97a2abe44781a13cd2ffc95069a8fd2678da68
[141] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/video4linux/gspca.txt;hb=HEAD
[142] https://www.heise.de/news/Kernel-Log-USB-Kamera-Treiber-in-2-6-26-neue-2-6-25-Variante-veroeffentlicht-185443.html
[143] https://www.heise.de/news/Kernel-Log-Neue-Grafiktreiber-Treiber-Enwicklungsmodell-erklaert-Nebeneffekte-durch-Stromsparen-182763.html
[144] http://linux-uvc.berlios.de/
[145] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[146] http://www.misdn.org
[147] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e4ac9bc1f6686dcb8c34e2756aa93cc9546fa6ae
[148] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1b2b03f8e514e4f68e293846ba511a948b80243c
[149] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=960366cf8dbb3359afaca30cf7fdbf69a6d6dda7
[150] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1700fe1a10dc0eaac0ef60a8093eaeafa9bff9ae
[151] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=af69fb3a8ffa37e986db00ed93099dc44babeef4
[152] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3712b42d4b1bec29a4232a6673bf2e6dcc5faa68
[153] http://www.alsa-project.org
[154] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fe0a3fe324811385b64790d42079bf534798a0cd
[155] http://www.alsa-project.org/main/index.php/Changes_v1.0.16_v1.0.17
[156] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5430c72b14a06b12e8fe46bca18ca0d7095fb717
[157] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=02330fbaaded5b603cba112e4bbf62cdadec159a
[158] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f53281e62a41ac176f050307c0d746a1183a68e8
[159] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=be321a890c25272965129ffe4b3b59a519fcf583
[160] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f52845ad771a2b62bc06bc940f16c8f6296654ec
[161] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6a5325239c20202e18e21e94291bccc659fbf9e
[162] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=34f80b04f325078ff21123579343d99756ad8d0e
[163] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d03157babed7424f5391af43200593768ce69c9a
[164] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2d064c06fecadadcb81a452acd373af00dfb1fec
[165] https://www.heise.de/news/Fehlerhafter-Linux-Treiber-beschaedigt-Netzwerkkarte-Update-207465.html
[166] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a7703582836f55a1cbad0e2c1c6ebbee3f9b3a7
[167] http://www.heise.de/glossar/entry/Hauptentwicklungslinie-397933.html
[168] https://www.heise.de/news/Fehlerhafter-Linux-Treiber-beschaedigt-Netzwerkkarte-Update-207465.html
[169] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a7703582836f55a1cbad0e2c1c6ebbee3f9b3a7
[170] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=37f40239f49fbc0b489d0327a700fee5b3898ac2
[171] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a8f88ff5a5abc2ce9f7d7d2694178b2c617d713a
[172] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=23033fad5be0a2c7838cb9e1579919b64af713f6
[173] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4fa7553a075918e1e02a6039f9e826c8872b7049
[174] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=717d438d1fde94decef874b9808379d1f4523453
[175] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=95b866d5afcafee00fc9ad70665e48c86d8c4e0f
[176] https://www.heise.de/news/OpenSuse-11-1-Beta-die-Zweite-209447.html
[177] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=20b937343e55c16e37b1a4ad2176760b4a11002c
[178] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5411552c707f4b7387ad63141ef3a559e7488091
[179] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=62ec30d45ecbb85b5991474c8f04192697687495
[180] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6a36913a33cf3d366e124f25c486a71212d02bce
[181] 
[182] #trends-u6
[183] #summary-u6
[184] #trends-u6
[185] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=24920c8a6358bf5532f1336b990b1c0fe2b599ee
[186] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2640d7c0b8d5d9d9ee303b8cd09f5124176f6239
[187] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=18f7ba4c2f4be6b37d925931f04d6cc28d88d1ee
[188] http://www.heise.de/open/artikel/116387/7
[189] http://www.heise.de/open/artikel/116387/8
[190] http://www.heise.de/glossar/entry/Commit-397925.html
[191] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c0e09200dc0813972442e550a5905a132768e56c
[192] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=72dc1c096c7051a48ab1dbb12f71976656b55eb5
[193] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f89bd95c5c946776f116ffeb997653d4193d6a35
[194] http://www.intel.com/go/ioat/
[195] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7f1b358a236ee9c19657a619ac6f2dcabcaa0924
[196] http://ieee1394.wiki.kernel.org/index.php/Release_Notes#Linux_2.6.27
[197] https://www.heise.de/news/Details-zu-Mainboardchipsaetzen-fuer-Nehalem-Desktop-CPUs-193398.html
[198] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b29c2360f11060a8e3fe09b16b550494d979371b
[199] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=adcb5308dda3d2749342685f23953e13ba74ff68
[200] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c6c6a1afefe51d488c050464f261d4711bea9a37
[201] https://www.heise.de/news/Nehalem-CPU-fuer-High-End-Desktops-und-Workstations-hoert-auf-den-Namen-Core-i7-Update-194441.html
[202] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4b9f12a3779c548b68bc9af7d94030868ad3aa1b
[203] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=34c86c1e622ec77ba81c01969003bbc8e15156f3
[204] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=20a9b6e7c303f2a6f9afe17c0997bc9a3c734442
[205] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blobdiff;f=Documentation/feature-removal-schedule.txt;h=65a1482457a89ec9d6c5beec89464bc049f3f5e2;hp=46ece3fba6f94c2924c94d6f96b4402984705102;hb=20a9b6e7c303f2a6f9afe17c0997bc9a3c734442;hpb=279e902445557897707d325182916a6e28ba80de
[206] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7102ed519a08b70eadc8fea9d8765d2d990241d1
[207] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=88d987d6db2a14b191f4eb21cc623dae31e28e9d
[208] 
[209] http://lwn.net/Articles/291826/
[210] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=47feff2c8eefe85099f87c43d3096855f0085ca0
[211] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e286781d5f2e9c846e012a39653a166e9d31777d
[212] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a60637c85893e7191faaafa6a72e197c24386727
[213] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=21cc199baa815d7b3f1ace4be20b9558cbddc00f
[214] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8174c430e445a93016ef18f717fe570214fa38bf
[215] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f5dd33c494a427b1d1a3b574de5c9e511c888864
[216] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bc40d73c950146725e9e768e856a416ec8949065
[217] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=652ea695364142b2464744746beac206d050ef19
[218] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=30002ed2e41830ec03ec3e577ad83ac6b188f96e
[219] http://thread.gmane.org/gmane.linux.kernel/690220
[220] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c3ed64295f0fed9131b42122234b1ce4a4a266cf
[221] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1184dc2ffe2c8fb9afb766d870850f2c3165ef25
[222] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bc0c38d139ec7fcd5c030aea16b008f3732e42ac
[223] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/ftrace.txt;hb=HEAD
[224] http://www.daimi.au.dk/~sandmann/sysprof/
[225] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f06c38103ea9dbca27c3f4d77f444ddefb5477cd
[226] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6dd24f8d00cbccb560b19a723e6fb9bdfb20799
[227] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=56a08bdcff20f0022bd9160c1093e56f763499aa
[228] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=842af315e8b0adad58fc642eaa5e6f53525e0534
[229] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0075fa80305f3231a2d5df97b00d7f55a48ea27e
[230] http://nouveau.freedesktop.org
[231] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8b7d89d02ef3c6a7c73d6596f28cea7632850af4
[232] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0fd0e3da4557c479b820b9a4a7afa25b4637ddf2
[233] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d61fc44853f46fb002228b18aa5f30db21fcd4ac
[234] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=Documentation/tracers/mmiotrace.txt;hb=HEAD
[235] http://lwn.net/Articles/270939/
[236] http://nouveau.freedesktop.org
[237] http://thread.gmane.org/gmane.linux.kernel/707950/focus=709648
[238] http://people.redhat.com/roland/utrace/
[239] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a717417e7f96ad2c6c3d80cdd0836e49597399a3
[240] http://www.gnu.org/software/libc/
[241] http://udrepper.livejournal.com/20407.html
[242] http://lwn.net/Articles/281965/
[243] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c09595f63bb1909c5dc4dca288f4fe818561b5f3
[244] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3ab83521378268044a448113c6aa9a9e245f4d2f
[245] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89081d17f7bb81d89fa1aa9b70f821c5cf4d39e9
[246] http://www.xmission.com/~ebiederm/files/kexec/README
[247] http://sourceforge.net/projects/khibernation/
[248] http://lwn.net/Articles/242107/
[249] http://thread.gmane.org/gmane.comp.emulators.kvm.devel/19733
[250] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cddb8a5c14aa89810b40495d94d3d2a0faee6619
[251] https://www.heise.de/news/Hypervisor-Schnittstelle-im-Linux-Kernel-2-6-20-125200.html
[252] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e39d80a5957eab9dfdd7490d5c5cee272c34aa7
[253] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e92e8c68a61ae7d845c1be0a58a081e7756b0735
[254] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4df8d22bbbb16ccfa4e10cc068135183c9e5e006
[255] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8a2f2ccc7a6bfbdb8b484198e190d6805d979700
[256] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0e91398f2a5d4eb6b07df8115917d0d1cf3e9b58
[257] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=457da70ec09ca78e8fda5d5ab3659248f844a376
[258] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=48b5db20621388582ca11ac3c61d3403966dbe51
[259] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cdacc1278b12d929f9a053c245ff3d16eb7af9f8
[260] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=51dd660a2cd6eab4d470cfe1009c7f473832b786
[261] https://www.heise.de/news/Mehr-Virtualisierung-im-Linux-Kernel-2-6-23-152825.html
[262] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c6580eb8b17d64f0d6ad25c86a034adbda5ab4e1
[263] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=534fe2c1c3ffbbc3db66dba0783c82d3b345fd33
[264] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=004a403c2e954734090a69aedc7f4f822bdcc142
[265] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0b07de85a76e1346e675f0e98437378932473df7
[266] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=39c11e6c05b7fedbf7ed4df3908b25f622d56204
[267] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b4718e628dbf68a2dee23b5709e2aa3190409c56
[268] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a5516438959d90b071ff0a484ce4f3f523dc3152
[269] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a137e1cc6d6e7d315fef03962a2a5a113348b13b
[270] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a3437870160cf2caaac6bdd76c7377a5a4145a8c
[271] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e11bfbfcb08ef4223b863799897c19cdf7c5bc00
[272] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2b188723ee1707ca902ddb98ce1decdeafb5190a
[273] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=918ad6c54d107ccfc4ccaa3a54b97437467fb58a
[274] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=54b4cbd26987f84791d6e05863a715ded9f7b3a5
[275] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=18d22200740b83a5d968d3236c27c310b3e8fda6
[276] http://invisible-island.net/diffstat/
[277] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f606ddf42fd4edc558eeb48bfee66d2c591571d2
[278] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=917f0af9e5a9ceecf9e72537fabb501254ba321d
[279] http://www.heise.de/open/Feinschliff-und-Anbauten-Die-wichtigsten-Neuerungen-von-Linux-2-6-26--/artikel/110091/4#trends
[280] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22b1d707ffc99faebd86257ad19d5bb9fc624734
[281] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4baa9922430662431231ac637adedddbb0cfb2d7
[282] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7f30491ccd28627742e37899453ae20e3da8e18f
[283] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b8b572e1015f81b4e748417be2629dfe51ab99f9
[284] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a439fe51a1f8eb087c22dd24d69cebae4a3addac
[285] 
[286] https://www.heise.de/glossar/entry/Linux-Kernel-Serien-und-Entwicklungslinien-397913.html
[287] https://www.heise.de/news/Kernel-Log-Keine-Unstable-Series-Linux-2008-7-Umgang-mit-Sicherheitskorrekturen-187446.html
[288] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[289] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[290] https://www.heise.de/news/Kernel-Log-Harter-Kern-der-Linux-Entwickler-diskutiert-Linux-Zukunft-auf-dem-Kernel-Summit-206055.html
[291] https://www.heise.de/news/Kernel-Log-Zweiter-Tag-des-Kernel-Summit-2008-Ubuntu-Kritik-bei-Eroeffnung-der-Linux-Plumbers-Conference-206649.html
[292] 
[293] http://www.linuxfoundation.org/
[294] http://ldn.linuxfoundation.org/book/how-participate-linux-community
[295] http://ols.fedoraproject.org/OLS/Reprints-2008/kleen-reprint.pdf
[296] https://www.heise.de/tests/Tiefe-Einblicke-Informationen-zu-Linux-in-den-Vortraegen-vom-OLS-221570.html
[297] http://thread.gmane.org/gmane.linux.kernel.next/2028/focus=2083
[298] http://thread.gmane.org/gmane.linux.kernel.next/2028/focus=2083
[299] 
[300] 
[301] 
[302] 
[303] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[304] http://www.heise.de/glossar/entry/Hauptentwicklungslinie-397933.html
[305] http://www.linux-foundation.org/en/Linux_Weather_Forecast
[306] https://www.heise.de/glossar/entry/Entwicklungszyklus-des-Linux-Kernels-397915.html
[307] http://thread.gmane.org/gmane.linux.network/106250
[308] http://thread.gmane.org/gmane.linux.kernel/735175
[309] http://thread.gmane.org/gmane.linux.kernel/735177
[310] https://www.heise.de/news/Kernel-Log-Neue-Stable-und-Vorab-Kernel-neue-Dateisysteme-Ubuntu-8-10-mit-2-6-27-198503.html
[311] http://thread.gmane.org/gmane.linux.kernel.wireless.general/19813
[312] http://thread.gmane.org/gmane.linux.network/101966/focus=101970
[313] http://www.heise.de/glossar/entry/Kernel-Log-397909.html
[314] https://www.heise.de/glossar/entry/Linux-Kernel-Serien-und-Entwicklungslinien-397913.html
[315] https://www.heise.de/glossar/entry/Linux-Kernel-Serien-und-Entwicklungslinien-397913.html
[316] http://www.heise.de/open/
[317] mailto:thl@heiseopen.de
[318] http://www.heise.de/open/artikel/116387/7
[319] #indepth-arch-u7
[320] #indepth-fs-u7
[321] #indepth-mem-u7
[322] #indepth-virt-u7
[323] #indepth-security-u7
[324] #indepth-docs-u7
[325] #indepth-inframisc-u7
[326] http://www.heise.de/open/artikel/116387/8
[327] #indepth-acpi-u8
[328] #indepth-laptop-u8
[329] #indepth-usb-u8
[330] #indepth-input-u8
[331] #indepth-storage-u8
[332] #indepth-net-u8
[333] #indepth-graphics-u8
[334] #indepth-v4l-u8
[335] #indepth-sound-u8
[336] #indepth-hwmon-u8
[337] #indepth-drvmisc-u8
[338] http://www.heise.de/glossar/entry/Commit-397925.html
[339] 
[340] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1c776bf87c855a6e823e13c3667f0cf7c14635bd
[341] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0beefa208bb3a9e581a60125703409ebe6f7fa53
[342] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=873b274a41c0cfe58b2eb0a7722424eb367b905b
[343] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=831d991821daedd4839073dbca55514432ef1768
[344] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c2a997c34c0aa952ba9c247b0c2043526054919
[345] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69c9189320c46b14e5ae3ad4b3a0d35cc63cba20
[346] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=23ca4bba3e20c6c3cb11c1bb0ab4770b724d39ac
[347] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6bcb13b35a2ea39be6c7cc0292b8ad1191b1a748
[348] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=caadbdce240c43e3e46c82fce6c00eb7f01e1beb
[349] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6825f1c1fa83b1e92b6715ee5771a4d6524d3b9
[350] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3c9cb6de1e5ad37d1558fdb0d9d2bed5a7bac0d9
[351] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bfc0f5947afa5e3a13e55867f4478c8a92c11dca
[352] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=23deb06821442506615f34bd92ccd6a2422629d7
[353] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8323444b5dba3fe55e56a95d20d8f55c1d6745af
[354] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89499759dc0dd300528510f465b0bf532fc79a2a
[355] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c4728f4a865067d96fb84f1d9c65e0ccd1f355d
[356] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3f9b5cc018566ad9562df0648395649aebdbc5e0
[357] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=652ea695364142b2464744746beac206d050ef19
[358] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=065cb3dfe24978651caedfa54da585388ad15dde
[359] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3bf2e77453a87c22eb57ed4926760ac131c84459
[360] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ee863ba7ab3d3ed8a9585d378aae69d1e3e9f1b4
[361] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2944e16b25e7fb8b5ee0dd9dc7197a0f9e523cfd
[362] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=15e551d25e5a600c76cb92171357d4cbe2d1bf7a
[363] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22d5c67c5b0476e463ce4b632ba9ec3953d33a5f
[364] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=efd746b8892d1d40c43c3d518b3bde9e56238ce8
[365] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b5e4ad57eeffef0ac274413f83be4ef903719ea4
[366] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=794d15b25df5dda10efba600d6dd6cd74a7aa9cb
[367] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=651c74c74bf84ba966b52588ba3329606f3fd8d4
[368] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=777f9bebad3476b7dbf5cd8abbd3414139ca0e48
[369] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c2af6c57c4a253b595b5eef1b665989b5f15de5
[370] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f76e9154736e9ab47b64940d0062f19c80225b7f
[371] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d2b2a6bbc020e5a9a244f318d28515081e922882
[372] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b08d5af39616fd32a1fafbcb51c36d4c99c4e02f
[373] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=42452b77a1fba2fee89350be2a9c03b54b27c218
[374] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ec753ccc10ad552c8ec2d40e0edbe3a9c562f30
[375] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=47e9cffde663eafd5f78987036429fc0994d90e8
[376] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7171d8672bb0bcb744935bd2c6108378b5c6c6ad
[377] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=905a09d57afcc49511de18a95605c11ad9c88649
[378] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0a6304a9517aa3593913ecfbbcad80e798641723
[379] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b9da3b9240f175a29274abb8a94d962b67bbabf6
[380] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=130de7cebe20a74261a75bb0c6026a3199cdb980
[381] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=262c3825a9f3eb0f4f30ebb4b1ee57397bcb3ffc
[382] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1efc80b53eb54770139219f99657abd92595fc86
[383] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a88d0ce494034fbb8dd0076d80e71b38abf5748
[384] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ce8ffef0bfd6e55d5da3923d8e9af27c3b5c4eff
[385] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7e5e9f5457f5cd019fd7e2f3da94e9fc72cc9ff6
[386] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f31405cc4cc568baad28273c7f45b0563b57a17d
[387] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=32dc80c9cb13a7ce686bcc26efcf39e35719b466
[388] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=73b4390fb23456964201abda79f1210fe337d01a
[389] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=421c175c4d609864350df495b34d3e99f9fb1bdd
[390] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e0bc24958e1305efe176adc9d5f23a09e84c0058
[391] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a0443fbb467af5e5930b9b059b52190605f70059
[392] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=779e6e1c724d30e0fd1baca78b852e41e3a23c1d
[393] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1d030370f09036e8dcb3cc40915f3f9cf92bb54c
[394] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a90ab95a9576d35de0d05f9f4fc435edcccafaa9
[395] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=04e917b606ffe6ec10fb75c21447162cba31f6b6
[396] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4cec1a37ba7d9dce6ed5d8259b95272100a98b1f
[397] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ce087150211412afd901a3fa16b1aab5b54d1bcb
[398] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f5e706ad886b6a5eb59637830110b09ccebf01c5
[399] 
[400] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=93e3270c87549dc531a0b0e5d06362d998d810cb
[401] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=678aaf481496b01473b778685eca231d6784098b
[402] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=dd919b9822c5fd9fd72f95a602440130297c3857
[403] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=49f1487b2e41bd8439ea39a4f15b4064e823cc54
[404] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c851ed540173736e60d48b53b91a16ea5c903896
[405] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=87c89c232c8f7b3820c33c3b9bc803e9358027da
[406] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=36cc410a6799a205bfc6ccc38abd9d52f2afba64
[407] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a3ab7155ea21aadc8a4d5687e91b3d876973185e
[408] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8f09e98768c17287df076580c4cc72ac358312c6
[409] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a14e4b572b0ee5c6dbe4aceb83d00b2c969324e9
[410] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=555e3775ced1d05203934fc6529bbf0560dd8733
[411] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1b002d7b173ae7cc15ed90d3c07f6d106babc510
[412] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=63ca8ce2a2641f9cb5f0add33ced4591681d1cd7
[413] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c8566350a3229ca505b84313c65d1403b4d0cbfc
[414] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e105b8bfc769b0545b6f0f395179d1e43cbee822
[415] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69ac9cd629ca96e59f34eb4ccd12d00b2c8276a7
[416] 
[417] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=58340a07c194e0aed7bc58b61ff24330bb2a409f
[418] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=51cc50685a4275c6a02653670af9f108a64e01cf
[419] 
[420] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5f94c1741bdc7a336553122036e8a779e616ccbf
[421] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7f39f8ac177db258200053074aa7a3d98656b1cf
[422] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=588968b6b7d34e6a88f538d1db9aca47b203623e
[423] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=542472b53ea9e0add0ba23976018210191d84754
[424] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3419ffc8e45a5344abc87684cbca6cdc5c9c8a01
[425] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9ba075a664dff836fd6fb93f90fcc827f7683d91
[426] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f697554515b06e8d7264f316b25e6da943407142
[427] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=14ae51b6c068ef7ab52dc2d53fe226e6189f2ab2
[428] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f08864b42a45581a64558aa5b6b673c77b97ee5d
[429] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=28fd6d7f953711fbf67496701be05513052d967d
[430] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7e0edc1bc343231029084761ebf59e522902eb49
[431] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e4dcff1f6e7582f76c2c9990b1d9111bbc8e26ef
[432] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6ba0e7b36c7cc1745b3cbeda244d14edae3ad058
[433] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3843fc2575e3389f4f0ad0420a720240a5746a5d
[434] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=95c7c23b06bc92f1772b9c9460845f179ba8c39e
[435] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=93a0886e2368eafb9df5e2021fb185195cee88b2
[436] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4f9c11dd49fb73e1ec088b27ed6539681a445988
[437] 
[438] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2069f457848f846cb31149c9aa29b330a6b66d1b
[439] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=84aaa7ab4c40b66d6dd9aa393901551ad50ec640
[440] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5459c164f0591ee75ed0203bb8f3817f25948e2f
[441] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5915eb53861c5776cfec33ca4fcc1fd20d66dd27
[442] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=12b29f34558b9b45a2c6eabd4f3c6be939a3980f
[443] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=061991ec6edceda48d60f7a53e17b8d3416266ae
[444] 
[445] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a7f371e54fac49ff62bb640d4a7276fca01527e8
[446] 
[447] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3d4422332711ef48ef0f132f1fcbfcbd56c7f3d1
[448] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=17ce452f7ea3df760b7f9f42453b6f6acd765217
[449] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5cbad0ebf45c5417104b383dc0e34f64fa7f2473
[450] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7f2da1e7d0330395e5e9e350b879b98a1ea495df
[451] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ebcb67341fee34061430f3367f2e507e52ee051b
[452] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8e3461d01bdbc3dbf993448ed9ad4acaaeb6495d
[453] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=32df2ee86a580f70f2dbb90cf81f413aa655f838
[454] 
[455] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c1e3b377ad48febba6f91b8ae42c44ee4d4ab45e
[456] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=da5e09a1b3e5a9fc0b15a3feb64e921ccc55ba74
[457] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=71b58cbb0c30d1f78636a48c4721529449d6ea37
[458] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3d532d5e3882c1387a2722df2a368c4a9224b12f
[459] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d20a4dca47d2cd027ed58a13f91b424affd1f449
[460] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ec983f7060cd73e14cdd3edd910339127a8a4e96
[461] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=30821fee4f0cb3e6d241d9f7ddc37742212e3eb7
[462] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=06d9e908b2248f983b186aaf569c58e1430db85d
[463] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=25e18499e08cb097cbbfeab5de25d094d5312ee5
[464] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8344b568f5bdc7ee1bba909de3294c6348c36056
[465] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eb9d0fe40e313c0a74115ef456a2e43a6c8da72f
[466] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d6d385743463f38a0da899cd4607e526ad9a049f
[467] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=979b1791e5b8f8b556faeec4c48339e7ed63af9f
[468] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=149e16372a2066c5474d8a8db9b252afd57eb427
[469] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5fde244d39b88625ac578d83e6625138714de031
[470] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bbb44d9f23d868a2837c6b22b8dfb123d8e7800c
[471] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f46753c5e354b857b20ab8e0fe7b2579831dc369
[472] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=337001b6c42938f49a880b1b8306c3ed771a7e61
[473] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c4635eb06af700820d658a163f06aff12e17cfb2
[474] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bdfe6b7c681669148dae4db27eb24ee5408ba371
[475] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=40b4ac33b4d1bdd5cbeb2241be2399c550fa3696
[476] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=22454cb99fc39f2629ad06a7eccb3df312f8830e
[477] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c227536b4cc2600fc9d22ba0067f699165f6621f
[478] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1f32ca31e7409d37c1b25e5f81840fb184380cdf
[479] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aee3ad815dd291a7193ab01da0f1a30c84d00061
[480] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d8f3de0d2412bb91639cfefc5b3c79dbf3812212
[481] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e1a2a51e684bfe9d6165992d4a065439617a3107
[482] 
[483] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7be35c72e6454059a33ad844153349973d22fcb7
[484] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0e74dc2646db04b644faa8ea10ff4f408d55cf90
[485] 
[486] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=550a7375fe720924241f0eb76e4a5c1a3eb8c32f
[487] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f2189c477c986db47ac7f9cc32d05f6df18bfe9e
[488] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6188a83f7264edebe9b8ee10ad7b2136d3531ea6
[489] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bf3fc82895f4f501da9daef44d057749fe900c3e
[490] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0391c828ce75cc71ae301946699a6f2d515fd99d
[491] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=40982be52d8f64c3e10adce17e66ab755a4fa26b
[492] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eaea04353e0114a9805fc2cf1ff832cb0ac2570b
[493] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=368ee6469c327364ea10082a348f91c1f5ba47f7
[494] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d28525f8866244a77b677c0470d4859cb2b6c2a8
[495] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c5e46007e9737b77a79ec79ed95262c0ce996d6a
[496] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=51cdc1c103dcb7cf1ca280843308a2e32847f9ce
[497] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b9a097f26e55968cbc52e30a4a2e73d32d7604ce
[498] 
[499] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f91a79fe86a0becdf2506c189cdde154e82c787c
[500] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9f86f28df14e06b12908d6475ee2462f0555bf34
[501] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=72d18a7b9e1a3a9511bae78fc7f0932ae01d5d73
[502] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=73422392734bb68c8ff8bc74ce1bbdc32f1b639a
[503] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5a18c343a6bee4b38965f14a40ccb95306641f87
[504] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0376bce7b0659fe1e80d045860087072583ab93f
[505] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0e7e92fa3c55eee0047ee894b7eb8eb2362d83d9
[506] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5b5b43d0b32ea586036638288c31179f00de5443
[507] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89cdb8cebe6ab6590f8083877c4ca5e92303b3b0
[508] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3bee2a04cf14f599e094a37445f2eb4e6bb316bc
[509] 
[510] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=46dfa040f6c26f416a0979a7cd5a2d81f08121d5
[511] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=05944bdf6fadb5394710269df6770dde447b23ca
[512] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=97b697a11b07e2ebfa69c488132596cc5eb24119
[513] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5b66c829bf5c65663b2f68ee6b42f6e834cd39cd
[514] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a48998fa16121d0fe3436cce43afd6f47424103
[515] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=46c5784c8fa736c2bb42fe681189b86e99abdc2e
[516] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=963e4975c6f93c148ca809d986d412201df9af89
[517] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bfce5e0179ad059035df28558724ff60af708e09
[518] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=96b1dfe8fe02e35f017c885b11f0beb10ff4f316
[519] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=28cfd8af52a9ed4e5bd1751ea6bc0b8c870f68ec
[520] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5a61dd9ec8c5a8e14fbccda3ab042555b692b9b2
[521] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ced3ec8aa7d0fa3300187ee47c144a22ccfc974e
[522] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=232595eaff951e96cabe5e85fed35f66b72ff51e
[523] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=30e5ee4d1a651a0c66e86c6612c003034bd20ba2
[524] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=931ee0dc5c69e8113233d21942681ab8fecde7f9
[525] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=453ea3ed0b3e8ad67d4ee9d2fccf3d95a3e1f709
[526] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3dabec7175bc6d49e88748cf03951357e74496ca
[527] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=989b854579875b38d45fffa7f8c89177f7698cd3
[528] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=072b91f9c6510d0ec4a49d07dbc318760c7da7b3
[529] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a4804cd6eb19318ae8d08ea967cfeaaf5c5b68a6
[530] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eac6e8e449647cbb9efee53977c8bfee0aa7d69e
[531] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7d2be0749a59096a334c94dc48f43294193cb8ed
[532] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f1d82698029b92a88f5500b99f66514b6dee2bc3
[533] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=28f52482b41edc88cdf575aa6ed414c6e116ce10
[534] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=be518018c6b9224c02284fb243207ef741c31ec6
[535] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=619ef4b42128709de4d89d209b2c874f560deecd
[536] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b8c86fc5d8deaa5a6dc49c2c1ed144e6838bf0f3
[537] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2134a922c6e75c779983cad5d8aae832275f5a0d
[538] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4489428ab5a49a6f443d9aa17f1d891417787d7b
[539] 
[540] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6fccab671f2f0a24b799f29a4ec878f62d34656c
[541] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7b7a9dfdf6ccda647f54ea5fa3bd0ac17a189eeb
[542] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=229bf0cbaa054f1502ab4ee219f05985d2c838d1
[543] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=75b8846acd11ad3fc736d4df3413fe946bbf367c
[544] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6ba33ac8a47d33d0b5996d24ddf66c457cd7180b
[545] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7bb0a04fcd610e5db59690332b2a46b6068c8bc3
[546] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5fcaed0124cde73124227542bfce4ed57fccbb50
[547] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2dffcc3dcd659b10ff97c6eda427d9d83a94a399
[548] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ea4e040abc72f2dbbfdd8d04e271a18593ba72c7
[549] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=493adb1fee89eaad4f6cb1018ef4c48fccd79ab5
[550] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=34f80b04f325078ff21123579343d99756ad8d0e
[551] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ad8d394804b355bc623decc50748cd01dbc0783b
[552] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c18487ee24381b40df3b8b4f54dd13ee9367a1ce
[553] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bb2a0f7ae477740d947b442f640a5d10b51025c0
[554] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4422b00390749f8b877b2838a99ef2948ae08a58
[555] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2bdf06c047d0bf7baa629b9074086e5338bd2b60
[556] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6d406b3c76b369a7b043470719761aa6ee1a38d1
[557] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c3570acb53c885f8accb8c85eda195781d30632f
[558] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=06941931d8697dd939d7cac379565b1b2de1415f
[559] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0aa1538f4e4bab366023f4c414555e4ed25994e6
[560] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2115a6432911b669bec037686066c7bbc70cc68e
[561] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=71557a37adb5df17631c493b3b7d912938c720b2
[562] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=86a74ff21a7ac4bc06b18076ddb0347712b46cfd
[563] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=865c652d6be9929927cabdc54b137b7541eb6612
[564] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=67fbbe1551b24d1bcab8478407f9b8c713d5596e
[565] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=198191c4a7ce4daba379608fb38b9bc5a4eedc61
[566] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aca257530f7d681b953961090ad729c32aa5ad62
[567] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=64bef7630ad5b0ccfdd73973e95cf7b7e39224d0
[568] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a9ea3fc6f2654a7407864fec983d1671d775b5ee
[569] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=32b0f53e5bc80b87fd20d4d78a0e0cb602c9157a
[570] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1a342d224afb03196e3df28a271f3ddf3787e8f4
[571] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0ce8b98d55861d5d86ef9bd8df69282b8c5f0b70
[572] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=57e6983cbde91b4569b4014b933f3a16e12b99fd
[573] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a6676019a794eac967a967c1206a57824b180c9a
[574] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b662348662f9661f9259c7186c1bdb65620045f1
[575] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f2df38596a81b6c24f4586b0b4befeaebf3e02db
[576] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fd7c8a40b2a63863f749e4d17f0d94d2e5ab1331
[577] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d2c3cc0070d32bf6cabe6b82942c3e80eae0bfc3
[578] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e122be089e6fb8d3f322416da4cdbb80ce12927
[579] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e100bb64bf7cdeae7f742a65ee1985649a7fd1b4
[580] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9d139c810a2aa17365cc548d0cd2a189d8433c65
[581] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=566bfe5a8bcde13188a356f77666f8115813cf31
[582] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=04dea136b06ddd58879c9272b9f66ff060962317
[583] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f5eda47f45e90dfa38e25d569b9ac84ba94f8301
[584] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7fd871edf437362b62ddd807542638cbda8d8a39
[585] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fcd7cc1496681f7241ef8b80f32bb35d72a4e78b
[586] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7c7e6af37dad30632103497a72a1273d18ec55fe
[587] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ccc580571cf0799d0460a085a7632b77753f083e
[588] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=84e6dc9acf6825f508feae9db6b7d695e64894e0
[589] 
[590] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2ece5f43b041b96fa2a05107a10a6b0ea0c03a3b
[591] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e074058d72486676f6fdf6fe803200c62dcb403
[592] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ff1d5c2f0268f4e32103536e2e65480b5b7b6530
[593] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0c36ec31473593aa937ff04f3b3b630e81512734
[594] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7444a72effa632fcd8edc566f880d96fe213c73b
[595] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bbcd6d543de335bf81e96477f46a60a8bf51039c
[596] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d8f388d8dc8d4f36539dd37c1fff62cc404ea0fc
[597] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=54f961a628b737f66710eca0b0d95346645dd33e
[598] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a25e41831ee851c1365d8b41decc22493b18e6d
[599] 
[600] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bfda3a0b3276cda7f2da1dcd98bd060b60954cbb
[601] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7fd4828f6cc5bd4339ff58e372ccb5f528548b30
[602] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a9fc52bcbeb5245b58d23c558f3e3e8f18bebbc3
[603] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2a83e4d5e40fd8eda3c04a5847f0876a4be9d45b
[604] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4fd305b2a2c4d16e8d4ebc95c84f946edd3385c5
[605] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e14b3658a7651ffd9b1f407eaf07f4dde17ef1e7
[606] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a51e34dd6080d8d5c9e95a4e0292cd4cb889a61b
[607] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5ae2fcaee4b0d6bf0fa5d9bd71e1291c9a9a6e60
[608] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8e8bd229eef385ab420d4fa51c611d4ddc7cb0c8
[609] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=11417daab6d596f8d4851476777ca49fb3b12a87
[610] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=03c2808503b102971226007070c57410267d0b9d
[611] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3b6fe58f0f18880200969e813d0181d1bdab0966
[612] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1a3932e0ed9ca46db2b76ce067e4ebaf04d91ea1
[613] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6df516905b5c53b306d90be33f9c56434e8db053
[614] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=335377b73dd0b0af1fbd283ceae6fcb87a747885
[615] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=52b5045078b76ee86e210210601d45670eab22f1
[616] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f5376adacc693155c24e4e7be3777bdd0eeb99f7
[617] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a0c04a1ee3b4df6a30ae6975e13c558908df400
[618] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=af2a887c9aaca82306e9744d914ac335051ce987
[619] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=139dfeb2611ce92dec4c6b77297d209748340a21
[620] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d3603341e2f3c39f017f8df4b1cd734aeb0d453b
[621] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=59d07f1b705c466ea4eaca9c43d46be6d6a065a4
[622] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=95b86a9a9020da22e7c25abc77aae4dc8f02ab55
[623] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d2d16e9084ee44088974c3312b803d54dd9b46d7
[624] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6ab0b174d22b448d66058c9de0114fdfac5b7ccf
[625] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e546f4bb6d3b320d60c33025597bc8fc31532394
[626] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=086272555d1b7936512de1e6d9efacdf87169cb0
[627] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d56eebfbdc11d1a3809d8bd793a118da5058ffa8
[628] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3f038d80039f60e4340eaedd13369e0d2c758b80
[629] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0b17d0edbc22eda3d0407f98ce4f16ceefb9a97f
[630] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e2fc00c21124d9d9a8d4f396e5498ea27ddfc8fd
[631] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c7ecaf5ace4dba94b4c75afa395440acfb2e36c
[632] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=44f71c3fcefbfea3628cca52c0a177252cf83b60
[633] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=eb383bddc5ec52087ccfad4cccd8c6cc57c846d8
[634] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=854470606070d91955f03a7dca3a8024fc2a2540
[635] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=326c986207cb2065b9819107caa31efd2bbc48db
[636] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=69b28b110975abcfac3f7345494e74a771e9b724
[637] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=38f993ad8b1fe4caf9e989caf6e2a25aff3bbaf7
[638] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89f9257c06cb635ef140bd1acf21fb067ed4ed34
[639] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a046e43dc884e4cd01c682b22db9cc872d7b0e60
[640] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=25e69850d1bb315f251c91183b89da44d4f9be23
[641] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bdf2fe4a0b9d23e69c77eaec76212216c9a957ef
[642] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=835f09c6594aa98cbfae05c5466a81fda3081d2c
[643] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=58cfdf9acffb0c61feb0e2bceacd557a2e0b0328
[644] 
[645] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=142054a389ebf7972b4eee822ad7c55ff852b649
[646] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=87af38dafe4f930921b9217c21ec6d72cad56bcc
[647] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f6127efba1295b4668327b97014e678370028827
[648] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=787dba37a6ff5c80c67f37c081712a6e4af92e25
[649] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=862c2c0a61c515f2e9f63f689215bcf99a607eaf
[650] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=796d2ca84859d1fdb11ff06cd9707ffab5642fca
[651] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b7482f52789266e2548be5d0f6420c9fc12428d8
[652] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5d421516670e8009436e299bd25cff1a6d3a4707
[653] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f10485e79882bf09cf442a673511154987b43e3b
[654] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a161d235b68eb7234f40106560c488a1bdb3851
[655] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8c6529dbf881303920a415c2d14a500218661949
[656] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f52845ad771a2b62bc06bc940f16c8f6296654ec
[657] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c5d44423d55e3abca7b1d544af9e4c97ec203999
[658] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d2cd74b158d7214a556226e3312f9fb1de64d7ae
[659] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6cabf6b0694951288520512e0b68c78523acc9fd
[660] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6dda9f4a95905f2b38e79e3737da5e25397e6acb
[661] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fe7e873f52f17ad9b8ee9e2c70acaddcae22443b
[662] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3e0e469fa216ec70c93b1593821b759d19ee2e6b
[663] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1d11604eebfc91204e3182b48d3d920f51b09d40
[664] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2522d7359301efadfb5744ebd3c623c3af4a7b30
[665] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=abbc9d1b25637b1948a4718fa8f7b257233136bc
[666] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=470eaf6be78424fc499a5039e5d5fe58bace2bc3
[667] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=aafc4412be31306e5c38bd4e4581066507503adc
[668] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=be321a890c25272965129ffe4b3b59a519fcf583
[669] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=f269002e61446ed3410d8ca5f06ebca1e2760cb5
[670] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0701e0640f4a1de2b509cfee508216275f81d812
[671] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6a9dccd61253f361760802d8d19c28fa83ea83f5
[672] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=34ec8a0ae138c2787a550b930d29a9cce4900cee
[673] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=607d982bbea2a14b5b77cc7689f509d588e1e6da
[674] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=17bba1b72d190742c99a140154f0abac9c1996c3
[675] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9e6dd47bf365f8f7bccea10f22fbbdbecce429e8
[676] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8b83afe0d21f07145ec34ac006656e4d3edc4bac
[677] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a4bc53bc52978dd6c918531921da925fd047d95
[678] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=02330fbaaded5b603cba112e4bbf62cdadec159a
[679] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=62b126315369d52e40ad604e1798ff5b6265287e
[680] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=942fd1ebf6072fdaa07ae6d77a4f58b39c1bfdf9
[681] 
[682] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4ef664b5bc93bbfe28513165216a8c9f4fad5314
[683] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=34c86c1e622ec77ba81c01969003bbc8e15156f3
[684] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8f421c595a9145959d8aab09172743132abdffdb
[685] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=89bcb05d9bbf8bd559988bca4f2579defd28d008
[686] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6c633c3025c75f5fcf3a76d375faff34e3be021b
[687] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=549edb83327f2a5027a22d65b10603b01dc40175
[688] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cebd7709d396b59ff53b95fa3c4d9febbd4c010f
[689] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5bc1200852c3dfc312481f57622f48b289ac802e
[690] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=61045dbe9d8d81b1bae4dc1e9482d389ca99edc1
[691] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=54fb4a05af0a4b814e6716cfdf3fa97fc6be7a32
[692] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=279e902445557897707d325182916a6e28ba80de
[693] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=84aee4889ee843f4cde1c3fb1acfd116733660ef
[694] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=09177e85d6a0bffac8b55afd28ed8b82bd873f0b
[695] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=60cadec9da7b6c91aca51f408c828f7e74a68379
[696] 
[697] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d21c95c569c462da20d491b75d0a45bd70ddc1bf
[698] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9bfa35fe422c74882e27cc54450a5f76c96aad68
[699] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=77db1980565626471a980f0d2d17299e4bd5e7a5
[700] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=81bef0150074d677d8cbd4e971a8ce6c9746a1fc
[701] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=70bcaca75389a6c011ddc866eb1743b070a838b0
[702] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9c4a79653b35efc9d6790c295e22f79f4b361125
[703] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ff7b04796d9866327ea76e1393f1e902ef032f84
[704] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3bfb1d20b547a5071d01344581eac5846ea84491
[705] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8d8bb39b9eba32dd70e87fd5ad5c5dd4ba118e06
[706] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4a776f0aa922a552460192c07b56f4fe9cd82632
[707] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2635f96f9086409de0ec882a210f374c012bffc3
[708] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=13d19498b0446cad2c394f9fbec8149b44a60c6e
[709] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3d919e5f6b440bb0cc7996eb7628b29be09e6343
[710] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9a0deecc90de62c91d7107611446c0c950091851
[711] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0dcffac1a329be69bab0ac604bf7283737108e68
[712] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=785e821eb679c171f453722f15c6791de0c1abe1
[713] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6492cdf3a24fd620660c399745b5e169a0ed27d6
[714] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4b74ff6512492dedea353f89d9b56cb715df0d7f
[715] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e2ce4eaa76214f65a3f328ec5b45c30248115768
[716] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ba7e4763437561763b6cca14a41f1d2a7def23e2
[717] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e941d0ce532daf8d8610b2495c06f787fd587b85
[718] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6392776d262fcd290616ff5e4246ee95b22c13f0
[719] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e7d0fe340557b202dc00135ab3cc877db794a01f
[720] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8e6f0848be83c5c406ed73a6d7b4bfbf87880eec
[721] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e8695ebe5568921c41c269f4434e17590735865c
[722] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=48d335ba3164ce99cb8847513d0e3b6ee604eb20
[723] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4c1184e85cb381121a5273ea20ad31ca3faa0a4f
[724] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e53e86c7ae123b11c269b0835c04e1b42ca4baed
[725] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=571a354b1542a274d88617e1f6703f3fe7a517f1
[726] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=414c70cb91c445ec813b61e16fe4882807e40240
[727] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c080909eef2b3e7fba70f57cde3264fba95bdf09
[728] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=0eb5d5ab3ec99bfd22ff16797d95835369ffb25b
[729] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=53e84b672c1a8190af2b376c35c7a39cf1214f59
[730] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=500c919e3d699644cc9d6c1e93022481baafd8e1
[731] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8fd310a1cc3aadb7a17d844beeefae66b1a169c6
[732] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1b0b30acf3fc76e5d4d278fa5a8c9c6ac9898745
[733] http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=deb1a5f1134e7da0e3dacd37b5d32b7fe0600a7f
[734] http://kernelnewbies.org/Linux_2_6_27
[735] http://www.eu.kernel.org/pub/linux/kernel/v2.6/ChangeLog-2.6.27
[736] http://www.heise.de/glossar/entry/Commit-397925.html
[737] http://www.heise.de/glossar/entry/Patch-395546.html
[738] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=summary
[739] http://www.heise.de/glossar/entry/Patch-395546.html
[740] mailto:thl@heiseopen.de
[741] mailto:thl@ct.de