Kernel-Log: 2.6.36, neue Stable-Kernel, frische Treiber | heise online

Kernel-Log: 2.6.36, neue Stable-Kernel, frische Treiber

Während die Entwicklung von Linux 2.6.36 schon auf Hochtouren läuft, korrigieren zahlreiche neue Stable-Kernel einige Macken der Vorgänger. Derweil bringen neue Versionen von PowerTop und den Grafiktreibern für AMD- und Nvidia-Grafikchips zahlreiche Verbesserungen und Fehlerkorrekturen.

vorlesen Druckansicht 13 Kommentare lesen
Lesezeit: 12 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

Keine 48 Stunden nach der Freigabe von Linux 2.6.35 am Montag vergangener Woche begann Torvalds mit der Aufnahme der größten Änderungen für den Kernel 2.6.36; bis zum Morgen des Dienstags dieser Woche hatte er 5859 Commits vorgenommen, die in 6680 Dateien 474.097 Zeilen Quelltext einfügen und 376.182 Zeilen entfernen. Unter diesen Änderungen findet sich wie erwartet des Sicherheits-Framework AppArmor; von der Integration des ursprünglich ebenfalls zur Aufnahme vorgesehenen Yama Security Module haben die Kernel-Entwickler aber vorerst nochmal abgesehen. Integriert haben die Kernel-Hacker die Concurrencey Managed Workqueue Patches sowie ein Lirc-Interface für das bei 2.6.35 eingeführte Subsystem zur Nutzung von Infrarot-Fernbedienungen.

Neu dabei ist auch ein Treiber für Intelligent Power Sharing (IPS). Durch ihn können die Grafikchips in einigen Mobile-Prozessoren aus Intels Westmere-Generation – etwa der Core i5 – auf eine höhere Taktfrequenz umschalten und so mehr Grafikleistung liefern, wenn der Prozessor seine maximal spezifizierten Wärmeumsatz ("Thermal Budget") nicht ausschöpft, weil die x86-Rechenkerne der CPU nur teilweise belastet sind. Möglicherweise zieht auch die nagelneue und noch rudimentäre KMS-Unterstützung für die seit März auf Grafikkarten verbauten Nvidia-Grafikchips der Fermi-Generation in den Noveau-Treiber von 2.6.36 ein, denn noch bis Ende dieser oder Anfang nächster Woche ist das Merge Window der im Oktober erwarteten Kernel-Version offen.

Anfang des Monats hat Greg Kroah-Hartman die Stable-Kernel 2.6.27.49, 2.6.32.17, 2.6.33.7 und 2.6.34.2 freigegeben, die er bereits Anfang Juli vage angekündigt hatte. Die Version 2.6.33.7 soll die letzte der 33er-Serie sein; Kroah-Hartman rät daher in der Freigabe-Mail zum Umstieg auf die Version 2.6.35, da er die 2.6.34er-Reihe wohl auch schon bald auslaufen lassen wird.

Diese Woche hat Greg Kroah-Hartman dann nochmals nachgelegt und die Stable-Kernel 2.6.27.50, 2.6.32.18, 2.6.34.3 und 2.6.35.1 veröffentlicht. Wie immer finden sich keine konkreten Angaben, ob diese Versionen auch Sicherheitslücken oder schwerwiegende Fehler korrigieren. Die Texte der Freigabe-Mails unterscheiden sich aber leicht. Anwender der 27er-Kernel rät Kroah-Hartman etwa sehr deutlich zum Update ("All users of the 2.6.27 kernel series are very strongly encouraged to upgrade."); beim 32er-Kernel ist er nicht so nachdrücklich ("[...] are strongly encouraged to upgrade.") und bei den anderen beiden eher eine Empfehlung ("[...] should upgrade.").

Eine Korrektur für eine Macke von 2.6.35, die die Stromaufnahme erhöht, wird wohl erst in den Nachfolger von 2.6.35.1 einziehen. Es gibt zudem noch ein Performance-Problem im Btrfs-Code von Linux 2.6.35 – der Btrfs-Hauptentwickler sucht bereits nach der Ursache und einer Korrektur für das wohl nur in einigen Konfigurationen auftretende Problem.

Kernel

  • Nach den langen, im Kernel-Log oder bei LWN.net (u. a. 1, 2, 3) mehrfach erwähnten Diskussion um die Aufnahme des für Android entwickelten Suspend Block API (früher Wakelocks) ging das Thema Anfang des Monats auf der LKML in die nächste Runde: Paul E. McKenney hat versucht, die Problematik und die früheren Diskussionen zusammenzufassen. Die daraus entstandene Diskussion dauert noch an; die mittlerweile dritte, als "final" bezeichnete Ausgabe der Zusammenfassung gibt allerdings einen guten Überblick darüber, welche Probleme die Entwickler zu lösen versuchen und wo die Schwierigkeiten dabei liegen.
  • Con Kolivas hat die auf Linux 2.6.35 abgestimmte Version 0.323 seines Brain Fuck Scheduler (BFS) freigegeben, den er bei seinem eigenen, auf "Reaktionsgeschwindigkeit und Interaktivität" optimierten Kernel 2.6.35-ck1 einsetzt; mit Messergebnissen zu seinem Prozess-Scheduler und seinem Kernel versucht er deren Vorteile zu unterstreichen. Allerdings scheint er die anderen Kernel-Entwickler aber mehr über sein Vorgehen zu informieren, als mit ihnen zusammenzuarbeiten. Das wäre jedoch nötig, um Teile seiner Verbesserungen für eine Aufnahme in den Kernel fit zu machen oder dabei zu helfen, den derzeit im Kernel enthaltenen Scheduler und andere Subsysteme zu verbessern – nur so könnte der Standardkernel in den Bereichen besser werden, in denen der Code von Kolivas möglicherweise Vorteile zeigt.
  • LWN.net hat kürzlich den englischen Artikel Realtime Linux: academia v. reality veröffentlicht, in dem der deutsche Realtime-Linux-Entwickler Thomas Gleixner einige Hintergründe zur Entstehung der Realtime-Erweiterungen für den Linux-Kernel liefert und dabei auch auf einige Aspekte bei der Zusammenarbeit mit Universitäten und anderen Forschern eingeht. In dem Artikel findet sich auch eine Liste mit zahlreichen in den letzten Jahren entstandenen Kernel-Verbesserungen, die ihren Ursprung im RT-Zweig haben.
  • In verschiedenen Webforen und auf Mailinglisten finden sich Berichte, dass sich Systeme unter bestimmten Bedingungen extrem langsam anfühlen oder zeitweise gar nicht mehr reagieren, während der Kernel größere Datenmengen auf ein langsames Medium (etwa einen USB-Stick) schreibt. Ein Entwickler hat sich diesem Problem jetzt gewidmet und einige Änderungen zur Diskussion gestellt, die ein in der Beschreibung des ersten Patches näher erläutertes Problem beseitigen sollen. Es ist derzeit allerdings noch ungewiss, ob diese Änderungen noch in Linux 2.6.36 einziehen.
  • Kurz nach den Ausführungen zur Fehlerbeseitigung und Qualitätssicherung im letzten regulären Kernel-Log schlug jemand im Bezug auf eine der erwähnten Mails von Theodore 'tytso' Tso vor, doch bei 2.6.36 keine neuen Funktionen aufzunehmen und stattdessen nur Fehlerkorrekturen zu akzeptieren, bis die Liste der bekannten Fehler abgearbeitet sei. Tytso erklärte in seiner Antwort, dass man dies bereits versucht habe und es nicht funktioniere – unter anderem weil die Entwicklung von Freiwilligen betrieben würde, die in einer solchen Periode trotzdem Verbesserungen entwickeln und diese dann eben erst mal für sich behalten. Wenn all die aufgestauten Änderungen später in den Kernel aufgenommen würden, brächte das noch viel mehr Fehler mit sich. Er schließt mit den Worten, es sei letzten Endes selbstzerstörerisch, die Aufnahme neuer Funktionen unterbinden zu wollen ("But trust me, trying to forbid new features in mainline is ultimately self-defeating.").
  • Im Artikel "Speaking UNIX: Get to know Ksplice" erläutert IBM-Developerworks die Funktionsweise von Ksplice näher, mit dem sich Sicherheitslücken im Kernel ohne Neustart korrigieren lassen.
  • IBM-Entwickler Ben Chociej hat einige als "Btrfs hot data tracking functionality" gezeichnete Erweiterungen veröffentlicht, durch die das experimentelle Dateisystem viel genutzte Daten auf einem schnellen Medium eines Datenträgerverbungs ablegt und alle anderen auf einem langsameren, um die Zugriffsgeschwindigkeit auf die häufiger benötigten Daten zu steigern.

Grafik

  • Die im Mesa-Entwicklerzweig enthaltene Version des 3D-Treiber für R600- und R700-GPUs von AMD bietet seit kurzem volle Unterstützung für OpenGL 2.1 und Version 1.20 der GL Shading Language.
  • Peter Hutter hat eine Protokoll-Spezifikation zur Unterstützung von Multitouch-Hardware in X.org zur Diskussion gestellt.
  • Nvidia-Entwickler Aaron Plattner hat die Version 2.1.18 des meist schlicht "nv" genannten X.org-Grafiktreibers xf86-video-nv veröffentlicht. Sie verweigert den Start, wenn der alternative Nvidia-Treiber "Nouveau" im Kernel aktiv ist- Außerdem bringt sie einige Fehlerkorrekturen und rüstet Unterstützung für verschiedene Grafikkarten und -Chips nach – darunter die GeForce-Modelle 315, 7025 und 7050. In Zukunft dürften die Änderungen bei neuen Versionen wohl dürftiger werden, denn Nvidia pflegt diese Treiber nur noch und will keine größeren Neuerungen mehr einbauen.
  • Zwei Beta-Version von Nvidias proprietären Treibern bieten derweil einen Vorgeschmack auf die Funktionen zukünftiger Grafiktreiber: Die über das Entwicklerportal erhältliche Version 256.38.03 enthält Unterstützung für OpenGL 4.1, während die bei NvNews.net angekündigte Version 256.44 unter anderem Unterstützung für die GeForce GTX 460 sowie die Quadro-Modelle 4000, 5000 und 6000 nachrüstet. Letztgenannter Treiber bricht zudem bei aktivem Nouveau-Treiber mit einer aussagekräftigen Fehlermeldung ab und liefert in der Dokumentation einige Hinweise zum Deaktivieren von Nouveau.
  • AMD hat Ende Juli die Version 10.7 den als Catalyst oder Fglrx bekannten proprietären Linux-Grafiktreiber für Linux zum Download freigegeben. Eine der langfristig wohl wichtigsten Neuerungen verbirgt sich hinter dem schlichten "OpenSuse 11.3 early look support" in den Release Notes, denn durch diese Neuerungen arbeitet der Treiber mit den seit April erhältlichen X-Servern der 1.8er-Serie zusammen – einige Distributionen hatten diese bereits vor OpenSuse 11.3 eingesetzt, sodass sich der AMD-Treiber nicht verwenden ließ. Zu den weiteren Neuerungen der Version 10.7 zählt die Unterstützung für die Multi-Display-Technik Eyefinity und "Production Support" für Ubuntu 10.04.
  • Neue Treiberversionen gab es auch für die X.org-Treiber vmware und xgi.
  • In Vorbereitung befindet sich auch ein neuer Geode-Treiber – AMD hat sich dessen Entwicklung wieder angenommen, nachdem die Weiterentwicklung des Treiber nahezu zum Stillstand gekommen war, als ein AMD-Entwickler das Unternehmen vor zwei Jahren verlassen hatte.

Kernel-Umland ("Plumbing layer"), Userland-Treiber, Entwicklertools, ...

  • Stephen Hemminger hat die Version 2.6.35 der Netzwerk-Toolsammlung iproute2 freigegeben. Sie enthält unter anderem das Programm ip zur Konfiguration von IP-Adressen und Routen, das mehr Möglichkeiten bietet als die veralteten und von manchen Entwicklern als "deprecated" eingestuften, von vielen Anwendern aber dennoch genutzten Programme "ifconfig" und "route".
  • Intel-Entwickler Auke Kok hat kürzlich die Version 1.13 des Kommandozeilentools PowerTop veröffentlicht, das Programme aufspürt, die den Prozessor aufwecken, einige Stromsparfunktionen des Kernels aktiviert sowie Schlafzustände und -Zeiten von Prozessoren anzeigt. Die neue Version unterstützt außerdem das Runtime Device Power Management, das mit der Kernel-Version 2.6.34 erheblich überarbeitet und erweitert wurde. Das Programm zeigt nun auch an, welche Anwendungen die Festplatte oder die Audio-Hardware beschäftigen und so von einem Wechsel in einen stromsparenden Zustand abhalten. Es liefert zudem Informationen zur Nutzung des AHCI Link power management (ALPM) und zeigt an, ob Turbo Boost funktioniert. In einem Blog-Post hat Arjan van de Ven zudem zusammengefasst, wie sich die Rolle von PowerTop mit der Zeit geändert hat und welche Aufräumarbeiten im Gang sind, um den Code für zukünftige Erweiterungen fit zu machen.
  • Patrick McHardy hat die Version 1.4.9 des Programms iptables veröffentlicht.
  • Neil Brown hat die Version 3.1.3 des Software-RAID-Werkzeugs mdadm freigegeben. Sie bringt vorwiegend Fehlerkorrekturen; neue Features soll die in Vorbereitung befindliche Version 3.2 bringen.
  • IBM-Developerworks liefert in dem Artikel High-availability storage with Linux and DRBD einige Hintergründe zur Funktion und Nutzung des bei Kernel 2.6.33 integrierten "Distributed Replicated Block Device".
  • Junio C Hamano hat die Freigabe der Git-Versionen 1.7.2.1, 1.7.1.2 und 1.7.0.7 bekannt gegeben.

Weitere Hintergründe und Informationen rund um Entwicklungen im Linux-Kernel und dessen Umfeld finden sich in den vorangegangenen Kernel-Logs auf heise open. Neue Ausgaben des Kernel-Logs werden auf den Identi.ca- und Twitter-Konten "@kernellog" erwähnt; die englischen, bei den Kollegen von "The H" erscheinenden Übersetzungen auf den Identi.ca- und Twitter-Konten "@kernellog2". Gelegentlich zwitschert der Autor des Kernel-Logs unabhängig davon über einige Kernel-Log-Themen bei Identi.ca und Twitter als "@kernellogauthor". (thl). (thl)