Kernel-Log: Fehlerbeseitigung und Qualitätssicherung | heise online

Kernel-Log: Fehlerbeseitigung und Qualitätssicherung

Wohl speziell für einen Firmenkunden hat ein Red-Hat-Entwickler kürzlich einen Fehler im Intel-Grafiktreiber beseitigt, der zahlreiche Besitzer von Systemen mit 945GM-Chipsatz bereits seit Jahren plagt. Derweil appellierte Theodore 'tytso' Tso kürzlich in einer Diskussion auf der LKML, dass Anwender bei Fehlerbeseitigung und Qualitätssicherung eine Eigenverantwortung tragen und selbst aktiv werden müssen.

vorlesen Druckansicht
Lesezeit: 11 Min.
Von
  • Thorsten Leemhuis
Inhaltsverzeichnis

Wie Entwickler verschiedener Firmen am Kernel zusammenarbeiten, was Support-Verträge mit Linux-Distributoren nutzen und wie kommerzielle Interessen die Linux-Entwicklung und Fehlerbeseitigung beeinflussen, lässt sich aus dem Umfeld einer kürzlich für den Kernel 2.6.35 aufgenommenen Änderung erkennen. Sie stammt von dem bei Red Hat beschäftigten DRM-Subsystem-Verwalter Dave Airlie und soll Stabilitätsprobleme und Abstürze beseitigen, die auf vielen Systemen mit Intels 945GM auftreten können – diese Chipsätze hat Intel 2006 eingeführt, sie stecken vornehmlich in Notebooks.

Die Problematik war den Entwicklern seit Jahren bekannt, denn zahlreichen Anwender haben die Probleme gemeldet (u. a. 1). Wie Airlie in seiner Bitte um Aufnahme des Patches ("Git-Pull-Request") dieser und andere Korrekturen für das DRM-Subsystem andeutet, habe es nun jedoch eine "Enterprise Reason" gegeben, sich dem Problem zu widmen – vermutlich ist also ein Red-Hat-Kunde über den Fehler gestolpert und hat auf eine Korrektur gedrängt. Dem Commit-Kommentar ist zu entnehmen, dass es Airlie "nur eine Woche und zahlreiche gerupfte Haare" gekostet hat, die Ursache auf einem Thinkpad T60 nachzustellen und durch einen Zehnzeiler zu beseitigen. Intel war nicht ganz unbeteiligt, denn Intel-Mitarbeiter Keith Packard steuerte einen Patch bei, der einige der von Airlies Codeerweiterungen verwendeten Register dokumentiert.

Das Linux keineswegs kostenfrei sei und man häufig Zeit oder Geld investieren müsse, war kürzlich auch die Kernaussage von Linux-Urgestein Theodore 'tytso' Tso in einer LKML-Diskussion, deren Auslöser eine Beschwerde über mangelnde Qualität und Qualitätssicherung war (1, 2). Mit Aussagen wie "Scratch your own itch" ("Kratz das eigene Jucken") und "There ain't no such thing as a free lunch." (TANSTAAFL / "So etwas wie ein kostenloses Mittagessen gibt es nicht") versucht Tytso dort zu unterstreichen, dass diejenigen, die im Besitz einer bestimmten Hardware sind, dafür sorgen müssen, dass diese funktioniere.

Um herauszufinden, ob nach Änderungen am Kernel ein Gerät genauso gut arbeitet wie zuvor, müsse der Anwender es daher ausprobieren. Dies solle idealerweise bei der dritten oder vierten Vorabversion einer neuen Kernel-Version passieren, denn je später jemand die Hardware testet und einen Fehler berichtet, desto später würde er auch korrigiert. Er führt das noch detaillierter aus und zeigt auf, dass man auch jemanden bezahlen kann, der im Gegenzug sicherstellt, das alles funktioniert. Abschließend sagt er, es sei nicht angemessen zu fordern, die Linux-Kernel von Kernel.org müssten stabiler werden, wo es sich doch um ein rein von Freiwilligen getragenes Projekt handle ("But demanding that kernel.org become "more stable" when it is supported by purely volunteers is simply not reasonable.")

Im Rahmen der Arbeit an den Anfang Juli freigegebenen Stable-Kerneln Linux 2.6.27.48, 2.6.31.14, 2.6.32.16, 2.6.33.6 und 2.6.34.1 hatte Greg Kroah-Hartman angedeutet, dass schon zahlreiche weitere Änderungen in seinem Posteingang liegen und er bald weitere Stable-Kernel nachreichen wolle – bislang ist davon allerdings nichts zu sehen.

Im Hauptentwicklungszweig scheint der aktuelle Entwicklungszyklus dem Ende entgegen zu gehen, denn Torvalds deutete bei der Freigabe der sechsten Vorabversion von 2.6.35 an, dass dies möglicherweise der letzte RC vor der Fertigstellung sei – eine Freigabe von 2.6.35 Ende dieser Woche oder irgendwann in der nächsten Woche ist damit recht wahrscheinlich. Daran werden auch die kürzlich aktualisierten "Regressions reports" wohl nichts ändern, die jeweils 25 Fehler in 2.6.34.x und 2.6.35-rc6 listeten, die die 2.6.33 beziehungsweise 2.6.34 nicht zeigten (1, 2).

Kernel

  • Einige kürzlich an die LKML gesandte Messergebnisse zeigen, dass Btrfs bei Wahl der falschen Caching-Strategie unter Qemu sehr viel langsamer arbeitet als die Ext-Dateisysteme oder XFS.
  • Christoph Hellwig gibt im "XFS status update for June 2010" einen Überblick über die jüngsten Änderungen rund um das XFS-Dateisystem.
  • Der häufig an Code zur Nutzung von Stromsparfeatures arbeitende Kernel-Hacker Matthew Garrett führte kürzlich in einem Blog-Eintrag nebenher an, dass "die Suspend- und Resume-Probleme von Linux weitgehend ausgeräumt seien". Es gäbe zwar noch Systeme mit individuellen Problemen, aber keine fundamentalen Probleme mehr im Kern-Code.
  • Hans Verkuil hat die Themen zusammengepasst, die im Juni auf dem Video4Linux-Mini-Summit diskutiert wurden. Demnach soll die Unterstützung für das ältere V4L-API soll bei der Kernel-Version 2.6.37 entfernt werden.
  • ATA-Kernel-Spezialist Tejun Heo hat einige Tests mit einer mehr als 2 TByte großen Festplatte durchgeführt und seine Erfahrungen in einer LKML-Mail zusammengefasst. Alle vier von ihm getesteten ATA-Adapter haben mit dem Datenträger korrekt zusammengearbeitet; selbst das Booten habe bei bestimmten Umgebungsparametern geklappt. Er ist aber noch auf einige Probleme gestoßen, die Anwender treffen werden, die von Datenträgern mit mehr als 2 TByte Speicherplatz booten wollen.

Grafik

  • Kurz nach Veröffentlichung des letzten Kernel-Logs haben die Intel-Entwickler die Version 2.12.0 des X.org-Treibers xf86-video-intel für das Gros der Intel-Chipsätze mit Grafikkern freigegeben. Laut Freigabe-Mail gab es zahlreiche Änderungen, die die Performance verbessern sollen – einige Tests sollen laut den angegebenen Messerwerten nun um ein Vielfaches schneller laufen. Diese Optimierungen sollen sich positiv auf die Scroll-Geschwindigkeit in Firefox auswirken. Außerdem soll die beschleunigte Video-Ausgabe nun auch bei der Nutzung eines erweiterten Desktops möglich sein. Die neue Treiber-Version ist auch Bestandteil des "Intel 2010Q2 graphics package", zu der unter anderem auch Mesa 7.8.2 und Libdrm 2.4.21 gehören.
  • Nvidia hat derweil Vorabversionen neuer Grafiktreiber aus den Legacy-Serien 173.xx und 96.xx freigegeben. Der neue 173er-Treiber bringt unter anderem Unterstützung für X-Server der 1.8-Serie; das ermöglicht Anwendern mit GeForce-Karten der FX-Baureihe (5xxx) den Einsatz der Nvidia-Treiber unter Fedora 13, OpenSuse 11.3 und andere Distributionen mit X-Servern der 1.8er-Reihe. Der neue 96er-Treiber für GeForce-Karten der Serien 2, 3 und 4 bietet noch keine Unterstützung für die aktuellen X-Server. Einem Phoronix-Bericht zufolge soll diese bald folgen; für noch ältere GeForce-Karten benötigte Treiber der 71er-Serie sollen diese Unterstützung allerdings nicht mehr erhalten.
  • Dave Airlie hat die Version 6.13.1 des Grafiktreiberpakets xf86-video-ati mit dem Treiber "radeon" freigegeben, die zahlreiche kleinere Verbesserungen und Fehlerkorrekturen bringt.
  • Mitte des Monats hat Keith Packard den fünften RC des X-Servers 1.9 freigegeben und darauf hingewiesen, dass es zur Freigabe Mitte August nur mehr vier Wochen seien.
  • Die Situation um Linux-Grafiktreiber für Intels auch als Poulsbo bekannten Chipsatz US15W ist schon seit langem problematisch und Anlass für Kritik an Intel. Selbst dem maßgeblich von Intel mitentwickelten MeeGo IVI (In-Vehicle-Infotainment) fehlen derzeit passende Grafiktreiber, obwohl der MeeGo-Vorgänger Moblin zeitweise welche enthielt. Grund sind Lizenzprobleme, wie ein Intel-Mitarbeiter kürzlich auf einer MeeGo-Mailingliste erklärte.
  • Die Seite RadeonFeature im X.org-Wiki listet seit kurzem etwas detaillierter, welche Stromsparfunktionen die Kombination aus aktuellem Radeon-KMS-Code und X.org-Treiber "radeon" auf welchen Grafikchips unterstützt.
  • Die Mesa-Demos sind wurden in einen eigenen Bereich ausgelagert und in den Versionen 8.0.0 und 8.0.1 veröffentlicht.
  • Qualcomm hat unter der GPLv2 stehende Kernel-Patches veröffentlicht, die den DRM-Code des Kernels um einen Treiber erweitern, mit dem ein Userland-Treiber 3D-Untersützung bieten könnte. Letzteren will das Unternehmen allerdings nicht offen legen. Dave Airlie hat daraufhin einen Blog-Eintrag verfasst und eine Mail an die LKML gesandt, in der er das Vorgehen kritisiert und erklärt, warum er gegen die Aufnahme der Patches ist; in seinem Blog hat er wenig später unter dem Titel "Embedded GPU : what are they hiding?" das Verhältnis zwischen den Entwicklern des Linux-Kernels und Embedded GPUs näher beleuchtet und weitere Hintergründe geliefert. Einen Überblick über die Situation liefert auch LWN.net im Artikel "A line in the sand for graphics drivers"
  • Im Blog-Eintrag "xmodmap keyboard deconfiguration" erklärt X-Entwickler Peter Hutterer, warum es bei modernen Distributionen keine gute Idee ist, die Konfiguration von Eingabegeräten mit xmodmap umkonfigurieren zu wollen. Im Blog-Post "Input event processing in X" liefert er zudem zahlreiche Hintergrundinformationen zur Verarbeitung der von Eingabegeräten wie Tastatur und Maus gesandten Events im X-Server.
  • Hutterer und einige andere Entwickler arbeiten daran, verschiedene Verbesserungen für die in letzter Zeit vernachlässigte X Test Suite (XTS) zusammenzuführen, um diese in einen besseren Zustand zuu bringen.

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

  • Karel Zak hat die Version 2.18 der bei allen neueren Mainstream-PC-Distributionen verwendenden Werkzeugsammlung util-linux-ng freigegeben. Das dort enthaltene Fdisk zeigt verwendet nun standardmäßig Sektornummer beim Anlegen von Partitionen. Neu sind die Programme findmnt, fsfreeze und swaplabel sowie die Library libmount; rausgeflogen sind die Kommandos ramsize, rdev, rootflags und vidmode.
  • Josh Stone hat die Veröffentlichung von SystemTap 1.3 bekannt gegeben.
  • Einen Überblick über die Neuerungen des kürzlich freigegebenen Git 1.7.2 liefert die zugehörige Freigabe-Mail von Junio C Hamano.
  • Richard W.M. Jones erklärt in seinem Blog grob, wie sich die Menge des Arbeitsspeichers von KVM- oder Xen-Gastsystemen mit Hilfe von "Balloons" anpassen lässt.
  • Der treibende Entwickler des NetworkManager, Dan Williams, integriert eher selten Workarounds für Treiber-spezifische Eingenarten und drängt darauf, stattdessen die Treiber zu korrigieren. Für den proprietären Broadcom-Treiber machte er allerdings kürzlich eine Ausnahme, wie er in seinem Blog schreibt.
  • Michael Kerrisk hat die Version 3.25 der Man-Pages freigegeben.
  • Die Entwickler des Projekts Hplip (Hewlett-Packard's Linux Imaging and Printing Software) haben die Version 3.10.6 der gleichnamigen Treiber für Drucker und Multifunktionsgeräte von HP veröffentlicht. Sie bringt Unterstützung für einige in den letzten Wochen und Monaten erschienene Distributionen und Drucker und beherrscht das LEDM-Protokoll, um den Gerätestatus via USB und Netzwerk abzufragen.
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).