Skip to content

Dankeschön!

Hiermit möchte ich mich bei allen Leuten bedanken die mir Webspace und Traffic für meine ISO-Datei zur Verfügung gestellt haben bzw. die geholfen haben die Datei per Bittorrent zu verteilen.

Ich habe keine 100% Zahlen, aber alleine von meiner Homepage wurde die Torrent-Datei bis heute 700x heruntergeladen. Ich schätze das die Datei von den verschiedenen Quellen mehr als 1000x heruntergeladen wurde. Die Leecher der Torrent-Datei kommen übrigens aus der ganzen Welt : Brasilien, Japan, Syrien, Marokko, um nur mal einige “exotische” Länder zu nennen.

An dieser Stelle also nochmals :

Ein großes Danke an alle die mir geholfen haben die Datei zu verteilen!

855GM-Patchdateien für aktuelle Kernel

Gestern sind die beiden Kernelversionen 2.6.32.13 und 2.6.33.4 erschienen. Da mein zurückportierter 855GM-Patch nur mit den Lucid-Kernelversionen “2.6.32-21″ bzw. “2.6.32-22″ funktioniert, habe ich mir mal die Mühe gemacht und den Patch auf die beiden Vanilla-Kernelversionen “portiert” (Reine Copy’n Paste-Aktion) :

fix-i8xx-gtt-cache-coherency-v9-2.6.32.13.patch
fix-i8xx-gtt-cache-coherency-v9-2.6.33.4.patch

Da sich die beiden Patches nur durch Änderungen in der Datei “intel-agp.c” (Die Änderungen im i915-Treiber sind identisch) unterscheiden, sollte sich der Patch für die 32er Kernelversion auch auf eine zukünftige Lucid-Kernelversion anwenden lassen. Wann eine solche Version erscheinen wird, steht aber noch in den Sternen.

Live-CD of Ubuntu 10.04 with updated Intel-drivers and 855gm-patched kernel-modules

As I promised in one of my (german) comments, i’ve made a remastered live-CD of Ubuntu 10.04. This live-CD can be downloaded by using a Bittorrent-client :

Edit 08/18/2010 : Removed torrent-file. It was outdated.

The remastered live-CD was updated with the latest packages (May 7th) including the latest Lucid kernel version “2.6.32-22.33″. I’ve also installed the intel-driver and the needed libdrm-packages from my own PPA.

The CD also includes the 855gm-patched kernel-modules i’ve made, to improve stability on 845/855-chipset-based systems. The CD includes the normal, more stable “855gm-fix-dkms”-package and not the experimental one.

The CD and later the installed system, boot automatically in KMS-mode. There is no need to fiddle around with configuration files to get KMS running. In addition i’ve activated the integration of Plymouth into the initrd-file to improve the eye-candy of the system boot.

To make room for this changes, i had to remove some of the preinstalled packages :

  • All Mono- and Mono-based packages (F-Spot, Tomboy & Gbrainy)
  • The package “binfmt-support” (Allows to run Mono-based applications as native programs)
  • All GNOME games
  • The files “wubi.exe” and “autorun.inf” which are for a windows based installation

If you want to reinstall this packages after a successful installation, you can use this command :

sudo aptitude reinstall --with-recommends ubuntu-desktop

Additional Download-Links
See article Ubuntu ISO-files

Live-CD von Ubuntu 10.04 mit aktualisieren Intel-Treibern und 855gm-gepatchten Kernelmodulen

Wie in einem meiner Kommentare versprochen, habe ich eine Live-CD von Ubuntu 10.04 “remastered”. Diese Live-CD kann man per Bittorrent-Client herunterladen :

Edit 18.08.201 : Torrent-Datei entfernt. Die ISO-Datei ist veraltet.

Das Live-CD-System wurde mit allen aktuellen Updates (Stand 07.05.2010) versorgt inklusive der aktuellen Lucid-Kernelversion “2.6.32-22.33″. Zusätzlich wurde der Intel-Treiber aus meinem PPA und der, für den Treiber notwendigen, libdrm-Pakete installiert.

Außerdem enthält die CD die gepatchten Kernelmodule (siehe vorherige Artikel), welche den 845/855-Chipsatz-basierten Rechnern ein großes Stück Stabilität wiederbringt. Es wurde das aktuellste, normale 855gm-Paket installiert und nicht das Experimentelle.

Die CD und später das installierte System fahren automatisch im KMS-Modus hoch, es ist also kein Nacharbeiten mehr notwendig. Zusätzlich habe ich Plymouth in die initrd-Datei eingebunden, damit man auch optisch etwas vom stabileren System hat.

Um Platz auf der Live-CD zu schaffen und die Größe der ISO-Datei unter 700MB zu halten, habe ich folgende Pakete deinstalliert :

  • Alle Mono-Pakete inklusive der darauf basierenden Anwendungen (F-Spot, Tomboy und Gbrainy).
  • Das Paket “example-content”.
  • Das Paket “binfmt-support” (Wird benötigt damit sich Mono-Programme wie normale Anwendungen starten lassen).
  • Alle GNOME-Spiele.
  • Die Dateien “wubi.exe” und “autorun.inf” für die Installation unter Windows.

Um die von mir deinstallierten Pakete nach einer erfolgreichen Installation von Ubuntu wieder zu reinstallieren, reicht es folgenden Befehl auszuführen :

sudo aptitude reinstall --with-recommends ubuntu-desktop

Weitere Download-Links
Siehe Artikel Ubuntu ISO-Dateien

Kurztipp : Plymouth in die Initial-Ramdisk aufnehmen.

Leider haben die Entwickler von Ubuntu 10.04 in einer der Betaversionen entschieden das Plymouth nicht mehr direkt in die Initial-Ramdisk (kurz “initrd”-Datei) aufgenommen wird. Das spart zwar Platz in der initrd-Datei und das System bootet dadurch auch etwas schneller (1-2s), aber durch diese Maßnahme sieht der Bootvorgang lange nicht so gut aus, wie er könnte.

Um Plymouth und die notwendigen Framebuffer-Grafiktreiber dauerhaft in die initrd-Datei aufzunehmen, reichen folgende zwei Befehle :

echo "FRAMEBUFFER=yes" | sudo tee /etc/initramfs-tools/conf.d/splash
sudo update-initramfs -u -k all

Nach dem nächsten Neustart begrüßt einen dann Plymouth direkt nach dem Starten des Systems und nicht mehr, wie vorher, erst kurz vor dem Anzeigen des Loginmanagers.

Paket mit aktualisierten Kernelmodulen für das 855GM-Problem II

So, nach mehreren Stunden Gebastel habe ich endlich den Bug im KMS-Modus im Zusammenspiel mit Plymouth (falsche Farben) und den Bug beim Wechseln auf die Textkonsole finden und beseitigen können. Der Witz daran war, das es nicht an meinem Paket mit den gepatchten Treibern lag, sondern das das Modul “vga16fb.ko” dem per DKMS bereitgestellten Kernelmodul “i915.ko” in die Quere kommt. Ersteres Modul wird anscheinend noch vor dem i915-Modul geladen und dadurch kommt es zu den genannten Bugs. Wird das Kernel-eigene Modul verwendet, taucht der Bug nicht auf, da aus irgendeinem Grund der Kernel dann das i915-Modul vor dem anderen Modul lädt.

Wozu das “vga16fb”-Modul überhaupt benötigt wird, wenn es denn Probleme macht? Ganz  einfach, dieses Modul wird benötigt damit Plymouth auch ohne KMS einen grafischen Boot-Splash erhält. Wird dieses Modul nicht geladen, benutzt Plymouth im Nicht-KMS-Modus automatisch das Text-Modul zur Ausgabe des Bootsplash. Das sieht dann nicht ganz so hübsch aus, ist aber funktionell identisch (Schriftzug “Ubuntu 10.04, laufende Punkte).

Jedenfalls habe ich ein neues DKMS-Paket erstellt, welches folgende Änderungenmit sich bringt :

  1. Das Modul “vga16fb” wird auf eine schwarze Liste gesetzt (Siehe Datei "/etc/modprobe.d/blacklist-855gm-fix.conf"). Dadurch wird das Kernelmodul beim Starten des Systems nicht mehr geladen und kommt dem “i915″-Modul nicht mehr in die Quere. Durch diese Maßnahme verschwinden automatisch die weiter oben genannten Bugs.  Wer kein KMS benutzt, erhält zwar den Text-Modus unter Plymouth, das ist aber, in meinen Augen, das kleinere Übel. Wen es stört, kann die Blacklist-Datei löschen und ein "sudo update-initramfs -u -k all" ausführen um den VGA-Bootsplash wieder herzustellen.
  2. Ich habe einen kleinen Patch integriert, welcher den Xv-Overlay-Modus unter dem KMS-Modus repariert. Der Xserver stürzt dadurch beim Anschauen von Videos nicht mehr ab.

Zusätzlich zu diesen Änderungen habe ich ein zweites, experimentelles Paket erstellt (“855gm-fix-exp-dkms”). In diesem habe ich die Prüffunktion “intel_wait_for_canary_flocks” des Stabilitätspatches abgeschaltet, welche hauptsächlich dafür verantwortlich ist, dass die Geschwindigkeit von Gtk+ in den Keller geht. Ohne diese Funktion ist die Geschwindigkeit nahezu identisch zum Ursprungszustand. Leider kann es sein, dass die Stabilität des System durch das Abschalten der Funktion schlechter als mit dem Originalpatch (Paket “855gm-fix-dkms”) ist.

Ich habe das experimentelle Paket aus dem Grund erstellt, da mein Rechner trotz des Abschalten der zusätzlichen Prüffunktion bisher keine Anzeichen macht abzustürzen und das trotz stundenlangem Surfen im Netz, Benchmarking unter OpenArena und Nexiuz und sonstigem Tests, welche die Grafikkarte und den AGP-Treiber fordern.

Wer das experimentelle Paket testen möchte, kann es per folgendem Befehl installieren (Voraussetzung ist, dass die “855gm-fix”-Quelle aus meinem PPA aktiviert ist) :

sudo apt-get install 855gm-fix-exp-dkms

Das neue Paket deinstalliert automatisch eine vorhandene nicht-experimentelle Version. Stellt man fest, dass die Stabilität des Systems durch das Paket schlechter geworden ist, reicht es die nicht-experimentelle Version zu installieren. Diese deinstalliert wiederum automatisch die experimentelle Version des Pakets.

Update
Eine wichtige Änderung hatte ich vergessen zu dokumentieren :

Beide Pakete rufen nach dem Kompilieren und Installieren der Module automatisch “update-initramfs” auf. Dadurch werden die neuen Module, für den Fall das auch Plymouth daran residiert, automatisch in die Initial-Ramdisk integriert. Ein händisches Aufrufen des Befehls ist also nicht mehr notwendig.

855GM-Howto für Ubuntu 10.04 aka Lucid Lynx

In diesem Artikel fasse ich alle Möglichkeiten zusammen um Ubuntu 10.04 auf einem 855GM-basierten Rechner zu installieren bzw. fehlerfrei zum Laufen zu bekommen.

Erstinstallation von Ubuntu 10.04

Zur Lösung des Problems des schwarzen Bildschirms bei der Installation von Ubuntu 10.04 gibt es drei Möglichkeiten :

  1. Benutzen der alternativen Installations-CD. Da diese nur im Textmodus läuft, funktioniert damit die Installation im Normalfall reibungslos.
  2. Aktivieren von KMS (Kernel-Based Mode-Setting) vor dem Booten der Live-CD.
  3. Benutzen meiner angepassten Live-CD.

Aktivieren von KMS vor der Installation mit der Live-CD

Um KMS für die Installation per Live-CD zu aktivieren, muss man folgendermaßen vorgehen :

Wenn das folgende Bild erscheint, muss man die “Shift”-Taste drücken um das Bootmenü der Live-CD aufzurufen :

Startbildschirm Ubuntu 10.04 Live-CD

Bevor das Bootmenü erscheint, muss man zuerst die Sprache auswählen. Hat man die Sprache ausgewählt, erscheint das vollständige Bootmenü. Dort drückt man die Taste “F6″ und danach “ESC” um die Kernelkommandozeile aufzurufen. In diese fügt man, wie man es auf dem folgenden Bild sehen kann, die Option "i915.modeset=1" ein. Danach muss man nur noch die Eingabetaste drücken und das System sollte bis zum Desktop booten.

Bootmenü Live-CD mit aktivierter Kernelkommandozeile

Nach der Installation

Nach der Installation hat man grundsätzlich das gleiche Problem, wie vor der Installation. Ohne einen kleinen Eingriff bekommt man wieder nur einen schwarzen Bildschirm zu sehen. Hier gibt wiederum zwei Wege das Problem zu beseitigen :

  1. Dauerhaftes Aktivieren von KMS durch Editieren der Grub2-Konfigurationsdatei.
  2. Benutzen einer alternativen Xorg-Konfigurationsdatei.

Für beide Wege ist es erforderlich das System einmal im Wiederherstellungsmodus hochzufahren. Diesen kann man im Grub2-Bootmenü (Altbekannte “Shift”-Taste beim Hochfahren drücken) auswählen. Wichtig ist nur das man im Menü des Wiederherstellungsmodus die Option zum Starten der “root”-Shell auswählt.

Anmerkung :

Den in den Kommentaren beschriebenen Weg über eine “i915-kms.conf”-Datei sollte man nicht benutzen, da dieser Weg aus irgendwelchen Gründen nicht bei allen Systemen zu funktionieren scheint. Der Weg über die Grub2-Konfiguration funktioniert dagegen immer.

Grub2-Konfiguration anpassen

Um die Konfiguration anzupassen, reicht es die folgenden Befehle in einem Textterminal zu übernehmen :

sudo nano /etc/default/grub

In die  Zeile  "GRUB_CMDLINE_LINUX" muss die Bootoption "i915.modeset=1" hinzufügt werden. Wo spielt eigentlich keine Rolle. Hauptsache irgendwo zwischen den beiden Anführungszeichen. Danach muss  die Datei abspeichert werden. Dann nur noch folgenden Befehl ausführen und das war’s :

sudo update-grub

Das System startet jetzt dauerhaft mit aktiviertem KMS. Sollte sich ergeben das der KMS-Modus die Systemstabilität beeinträchtigt, fährt man den Rechner einfach wieder im Wiederherstellungsmodus hoch und entfernt den oben genannten Eintrag aus der Grub2-Konfigurationsdatei wieder.

Wichtig :

Nach dem Ändern der Konfigurationsdatei muss immer das "update-grub"-Kommando ausgeführt werden, damit die Änderungen auch dauerhaft übernommen werden.

Alternative Xorg-Konfigurationsdatei

Dieser Weg bietet sich vor allem für die Leute an, deren System im KMS-Modus nicht stabil funktioniert und nicht zwingend auf den externen VGA-Ausgang angewiesen sind (Im Normalfall sind die 855GM-basierten Systeme Notebooks). Man muss dazu nur die Datei “/etc/X11/xorg.conf” anlegen bzw. editieren und folgende Zeilen einfügen :

Section "Monitor"
Identifier "VGA"
Option "Ignore" "true"
EndSection

Dadurch wird die Initialisierung des externen VGA-Ausgangs beim Starten des X-Servers abgeschaltet und der Treiber bleibt nicht mit einem schwarzen Bildschirm hängen.

Für welchen Weg soll ich mich entscheiden?

Das kommt auf der benutzte System an. Auf meinem Dell Latitude D505 funktioniert nur der KMS-Modus ohne weiteres Gebastel stabil. Es gibt zwar kleinere Grafikfehler beim Rendern von einzelnen Buchstaben (Ursache ist der gleiche Bug, welcher für die Abstürze verantwortlich ist) und der Suspend-Modus funktioniert auch nicht immer 100%, dafür kann ich mehr als 10 Minuten am Stück mit dem Rechner arbeiten. Leider funktioniert der Xv-Overlay-Modus zum beschleunigten Darstellung von Video-Dateien im KMS-Modus nicht (Ist ein Kernelbug von Ubuntu). Man muss leider auf den Nicht-beschleunigten Modus ausweichen oder die gepatchten Kernelmodule benutzen, bis dieser Bug beseitigt wird.

Momentan benutze ich mein System mit folgender Konfiguration :

  • Die Treiber und die “libdrm” aus meinem PPA.
  • Die gepatchten Kernelmodule aus meinem PPA, um den Kernelbug im Zusammenspiel mit dem 855GM-Chipsatz zu beseitigen. Mit den aktualisierten Modulen klappt auch der Xv-Overlay-Modus mit aktiviertem KMS.

Edit 16.05.10 :

  • Hinweis auf die Live-CD eingebaut.
  • Taste “F7″, um das Bootmenü aufzurufen, korrigiert. “F6″ und “ESC” sind korrekt. Sorry für den Fehler.
  • Hinweis auf die gepatchten Kernelmodule im Zusammenspiel mit dem Xv-Overlay-Modus eingefügt.
  • Konfiguration des eigenen Systems aktualisiert.

Paket mit aktualisierten Kernelmodulen für das 855GM-Problem

Das Problem mit dem 855GM-Chipsatz wurde ja leider nicht zum Veröffentlichungstermin von Lucid beseitigt, obwohl ein funktionierender Patch vorhanden ist (Siehe FreeDesktop Bugzilla – Bug 27187).
Da ich mit dieser Situation nicht mehr weiterleben und zudem nicht auf einen Entwicklungskernel ausweichen wollte, habe ich mich daran gemacht den Patch auf den momentan aktuellsten Lucid-Kernel zurückzuportieren. Im Prinzip war die ganze Aktion nur “Copy’n Paste”, also reine Fleißarbeit. Den Patch kann man unter folgendem Link herunterladen :

fix-i8xx-gtt-cache-coherency-v8-2.6.32.patch

Jedenfalls habe ich mich schon vor ein paar Tagen daran gemacht ein Paket mit den gepatchten Kernelmodulen “intel-agp.ko” (AGP-Treiber für Intel-Chipsätze) und “i915.ko” (Treiber für die Steuerung des Grafikchips auf Kernelebene, ist zuständig für den KMS-Modus) zu basteln. Das Paket benutzt DKMS um bei einem Kernelupdate die Module passend für den neuen Kernel zu kompilieren. Auf meinem Rechner funktioniert das Paket jeweils mit einem angepassten Kernel und dem Original-Kernel von Lucid problemlos und fehlerfrei. Deshalb habe ich mich entschieden es über mein PPA zum Herunterladen und Installieren anzubieten.

Bevor ihr euch auf das Paket stürzt, hier noch ein paar wichtige Anmerkungen :

  1. Der Paket ist nur für Besitzer eines 845/855GM-basierten Rechners gedacht. Alle anderen benötigen dieses Paket nicht, da nur die beiden genannten Chipsätze betroffen sind!
  2. Ich habe die Kernelmodule auf zwei Rechnern getestet. Auf diesen funktionieren sie einwandfrei und alle Symptome des Bugs (Abstürze, Schriftfehler) sind verschwunden. Wie gut bzw. wie schlecht sie auf anderen Rechnern funktionieren, wird sich dann zeigen, wenn weitere Benutzer das Paket installieren.
  3. Der Patch hat die Nebenwirkung das manche Grafikfunktionen langsamer als normal sind. Bemerken tut man das aber in der Regel nur, wenn man den Benchmark “Gtkperf” laufen lässt und die Werte mit einem ungepatchten Kernel vergleicht. Ich habe die letzten Tage normal mit meinem Notebook arbeiten und spielen können und mir ist nur aufgefallen, dass das Scrollen unter Firefox sich etwas zäher als üblich anfühlt. Ich hoffe das der Entwickler des Patches in der nächsten Zeit eine aktualisierte Fassung herausbringt, welche die Geschwindigkeit wieder auf das alte Niveau hievt.
  4. Plymouth bekommt durch die neuen Module im KMS-Modus einen kleinen Grafikfehler (Falschfarben). Dieser Fehler ist aber rein kosmetischer Natur.
  5. Wer Plymouth in die Initial-Ramdisk eingebunden hat, muss zwingend nach der ersten Installation des Pakets ein “sudo update-initramfs -u” ausführen. Ansonsten werden bei jedem Start die originalen und nicht die gefixten Kernelmodule geladen.
  6. Die Module sind nur dem Lucid-Kernel kompatibel. Wer einen anderen Kernel z.B. einen aus dem Mainline-Archiv benutzt, steht momentan im Regen. Die Module könnten zwar mit den anderen Kernelversionen kompilieren und dann auch noch funktionieren, aber die Wahrscheinlichkeit ist nicht sehr hoch.

So nach so viel Information, jetzt die Anleitung zur Installation des Pakets :

sudo add-apt-reposority ppa:glasen/855gm-fix
sudo apt-get update
sudo apt-get install dkms linux-headers-generic 855gm-fix-dkms
sudo update-initramfs -u (optional, siehe oben)

Den aktualisierten Intel-Treiber wieder rückstandsfrei deinstallieren

Falls man nach der Installation des Intel-Treibers und der “libdrm” aus meinem PPA feststellt, dass sich dadurch die Systemstabilität verschlechtert hat oder meinen Treiber aus irgendwelchen anderen Gründen wieder loswerden will, kann man alle aus meinem PPA installierten Pakete problemlos rückstandsfrei deinstallieren und die alten Pakete automatisch neu installieren lassen.

Dazu musst man nur das Debian-Paket ““ppa-purge” herunterladen und folgende Befehle ausführen :

wget https://launchpad.net/~xorg-edgers/+archive/ppa/+files/ppa-purge_0.2.6_all.deb
sudo dpkg -i ppa-purge_0.2.6_all.deb
sudo ppa-purge ppa:glasen/intel-driver
sudo ppa-purge ppa:glasen/libdrm

Danach ist der Urzustand des System wiederhergestellt.

Das Programm “ppa-purge” lässt sich generell zur Deinstallation aller PPA-Pakete benutzen. Dazu muss man nur den gleichen Namen benutzen mit dem man ein PPA mit Hilfe des Befehls “add-apt-repository” hinzugefügt hat (In meinen Fall z.B. “ppa:glasen/intel-driver”).

Intel-Treiber 2.11 für Ubuntu 10.04 aka Lucid Lynx

Seit vier Wochen gibt es jetzt die Treiberversion 2.11 und bisher funktioniert diese sehr gut mit Lucid Lynx. Leider hab ich gestern Abend festgestellt, dass man zwingend eine neuere Version der libdrm (2.4.20) als die von Lucid mitgelieferte benötigt (2.4.18), damit der Treiber sauber kompiliert. Der Treiber kompiliert zwar auch mit der Version 2.4.18, aber nur wenn man einen bestimmten Git-Commit wieder rauspatcht.

Solange es bei einem Commit bleibt, ist die Sache noch in Ordnung. Aber man muss davon ausgehen das die nächsten Versionen des Treibers viel stärker von der aktuellen libdrm abhängen und es dann schwierig bis unmöglich wird die Änderungen rückgängig zu machen bzw. passend auf die ältere Lucid-libdrm zurückzuportieren.

Deshalb habe ich jetzt folgende Änderung am Treiber durchgeführt :

Es wird zwingend die Version 2.4.20 oder höher der libdrm benötigt. Um diesen Umstand Rechnung zu tragen habe ich ein zusätzliches PPA mit eben jener Bibliothek eingerichtet. Dieses lässt sich über die folgenden Befehle aktivieren :

sudo add-apt-repository ppa:glasen/libdrm
sudo apt-get update
sudo apt-get upgrade

Ohne dieses PPA lässt sich der Intel-Treiber aus dem PPA nicht mehr installieren. Auf diesen Umstand weise ich auch explizit in den Paketbeschreibungen des Treibers hin.

Informationen zum PPA gibt es unter dem folgenden Link :

libdrm for Intel Driver 2.11git