openSUSE 11.3 – Kernel 2.6.34.7-0.7 im Update-Repo verfügbar

Frohes neues Jahr wünsche ich allen Lesern. Es wird für die openSUSE-Community wie auch für die openSUSE-User ein spannendes Jahr. Noch nie war die openSUSE-Community so aktiv wie heute und viele interessante Projekte sind am Start wie z.B. openSUSE Tumbleweed (Rolling-Release) oder auch openSUSE Evergreen (LTS = Long Term Support). Unsere Distribution (wohl eher unsere Community) sticht so langsam die anderen Distributionen (Communities) aus, weil wir dann das größtmögliche Angebot haben. Wie sagen wir so schön: Konkurrenz belebt das Geschäft. ;-)

[UPDATE 05.01.2011]
Bitte aufmerksam den unten genannten Hinweis an die ATI-Benutzer durchlesen, die per makerpm-ati-Skript auf die ATI Catalyst 10.12 aktualisiert haben.
[/UPDATE 05.01.2011]

Zurück zum Thema:
Ein neuer Kernel mit der Version 2.6.34.7-0.7 ist im Update-Repo verfügbar.

Das Kernel-Update kann über YaST2 oder per zypper eingespielt werden:

zypper up

Die offizielle Ankündigung von Marcus Meissner zum Kernel-Update:
http://lists.opensuse.org/opensuse-security-announce/2011-01/msg00000.html

Ein Auszug der Changelog aus der RPM:

  • patches.fixes/hpet-unmap-unused-I-O-space.patch: hpet: unmap unused I/O space (bnc#629908 bnc#629901).
  • patches.fixes/net-Limit-socket-I-O-iovec-total-length.patch: net: Limit socket I/O iovec total length to INT_MAX (bnc#650128).
  • patches.fixes/tcp-Fix-4GB-writes-on-64-bit.patch: tcp: Fix >4GB writes on 64-bit (bnc#650128).
  • patches.fixes/aio-check-for-multiplication-overflow-in-do_io_submit: aio: check for multiplication overflow in do_io_submit (bnc#642302 CVE-2010-3067).
  • patches.fixes/sctp-do-not-reset-the-packet-during-sctp_packet_config: sctp: Do not reset the packet during sctp_packet_config() (bnc#641983 CVE-2010-3432).
  • patches.fixes/ipc-initialize-structure-memory-to-zero-for-compat-functions: ipc: initialize structure memory to zero for compat functions (bnc#642314 CVE-2010-4073).
  • patches.fixes/ipc-shm-fix-information-leak-to-userland: ipc: shm: fix information leak to userland (bnc#642314 CVE-2010-4072).
  • patches.fixes/sys_semctl-fix-kernel-stack-leakage: sys_semctl: fix kernel stack leakage (bnc#642314 CVE-2010-4083).
  • patches.fixes/drivers-video-via-ioctl-c-prevent-reading-uninitialized-stack-memory: drivers/video/via/ioctl.c: prevent reading uninitialized stack memory (bnc#642313 CVE-2010-4082).
  • patches.fixes/v4l-dvb-ivtvfb-prevent-reading-uninitialized-stack-memory: V4L/DVB: ivtvfb: prevent reading uninitialized stack memory (bnc#642313 CVE-2010-4082).
  • patches.fixes/alsa-sound-pci-rme9652-prevent-reading-uninitialized-stack-memory: ALSA: sound/pci/rme9652: prevent reading uninitialized stack memory (bnc#642312 CVE-2010-4080 CVE-2010-4081).
  • patches.fixes/drivers-video-sis-sis_main-c-prevent-reading-uninitialized-stack-memory: drivers/video/sis/sis_main.c: prevent reading uninitialized stack memory (bnc#642311 CVE-2010-4078).
  • patches.fixes/fix-pktcdvd-ioctl-dev_minor-range-check: Fix pktcdvd ioctl dev_minor range check (bnc#642486 CVE-2010-3437).
  • patches.fixes/alsa-prevent-heap-corruption-in-snd_ctl_new: ALSA: prevent heap corruption in snd_ctl_new() (bnc#642484 CVE-2010-3442).
  • patches.fixes/novfs-unlink-oops: novfs: Fix for the issue of kernel dumps core on restart (bnc#641811).
  • patches.fixes/net-clear-heap-allocation-for-ethtool_grxclsrlall: net: clear heap allocation for ETHTOOL_GRXCLSRLALL (bnc#649187 CVE-2010-3861).
  • patches.fixes/avoid-pgoff-overflow-in-remap_file_pages: Avoid pgoff overflow in remap_file_pages (bnc#645659).
  • patches.fixes/kvm-move-dr-register-access-handling-into-generic-code: KVM: move DR register access handling into generic code (bnc#628591 CVE-2010-0435).
  • patches.fixes/drm-i915-unset-cursor-if-out-of-bounds-upon-mode-change-v4: drm/i915: Unset cursor if out-of-bounds upon mode change (v4) (bnc#547887).
  • patches.fixes/rt2x00-Fix-channel-configuration-for-RF3052.patch: rt2x00: Fix channel configuration for RF3052 (bnc#584028).
  • patches.fixes/rt2x00-Fix-max-TX-power-settings.patch: rt2x00: Fix max TX power settings (bnc#584028).
  • patches.fixes/rt2x00-Let-RF-chipset-decide-the-RF-channel-switch-m.patch: rt2x00: Let RF chipset decide the RF channel switch method to use in rt2800 (bnc#584028).
  • patches.fixes/rt2x00-rt2800-use-tx_power2-in-rt2800_config_channel.patch: rt2x00: rt2800: use tx_power2 in rt2800_config_channel_rf3xxx (bnc#584028).
  • patches.kabi/rt2x00-channel_info.patch: revert „rt2x00: Fix max TX power settings“ kabi breakage (bnc#584028).
  • patches.fixes/tty-restore-tty_ldisc_wait_idle.patch: TTY: restore tty_ldisc_wait_idle (bnc#642043).
  • patches.fixes/bio-take-care-not-overflow-page-count-when-mapping-copying-user-data: bio: take care not overflow page count when mapping/copying user data (CVE-2010-4162 bnc#652945).
  • patches.fixes/block-check-for-proper-length-of-iov-entries-in-blk_rq_map_user_iov: block: check for proper length of iov entries in blk_rq_map_user_iov() (CVE-2010-4163 bnc#652945).
  • patches.fixes/block-limit-vec-count-in-bio_kmalloc-and-bio_alloc_map_data: block: limit vec count in bio_kmalloc() and bio_alloc_map_data() (bnc#652945).
  • patches.fixes/block-take-care-not-to-overflow-when-calculating-total-iov-length: block: take care not to overflow when calculating total iov length (bnc#652945).
  • patches.fixes/filter-make-sure-filters-dont-read-uninitialized-memory: filter: make sure filters dont read uninitialized memory (CVE-2010-4158 bnc#652563).
  • patches.fixes/net-optimize-berkeley-packet-filter-bpf-processing: net: optimize Berkeley Packet Filter (BPF) processing.
  • patches.fixes/can-bcm-fix-minor-heap-overflow: can-bcm: fix minor heap overflow (CVE-2010-3874 bnc#651218).
  • patches.fixes/perf_events-fix-perf_counter_mmap-hook-in-mprotect: perf_events: Fix perf_counter_mmap() hook in mprotect() (CVE-2010-4169 bnc#653930).
  • patches.fixes/rds-integer-overflow-in-rds-cmsg-handling: rds: Integer overflow in RDS cmsg handling (CVE-2010-4175 bnc#654581).
  • patches.fixes/rds-integer-overflow-in-rds-cmsg-handling: Refresh.
  • patches.fixes/x25-prevent-crashing-when-parsing-bad-x-25-facilities: x25: Prevent crashing when parsing bad X.25 facilities (CVE-2010-4164 bnc#653260).
  • patches.fixes/tcp-increase-tcp_maxseg-socket-option-minimum: tcp: Increase TCP_MAXSEG socket option minimum (CVE-2010-4165 bnc#653258).
  • patches.fixes/scsi-gdth-integer-overflow-in-ioctl: gdth: integer overflow in ioctl (CVE-2010-4157 bnc#652940).
  • patches.fixes/net-truncate-recvfrom-and-sendto-length-to-int_max: net: Truncate recvfrom and sendto length to INT_MAX (CVE-2010-4160 bnc#652939).
  • patches.fixes/powernowk8-fix: Fix invalid pointer deref when powernow-k8 fails to initialise (bnc#655215).
  • patches.xen/1045-netback-sched-list-remove.patch: netback: take net_schedule_list_lock when removing entry from net_schedule_list.
  • patches.xen/1050-evtchn-cpu-clear.patch: evtchn: clear secondary CPUs‘ cpu_evtchn_mask[] after restore (bnc#651626).
  • Refresh other Xen patches.
  • patches.fixes/do_exit-make-sure-that-we-run-with-get_fs-user_ds: do_exit(): make sure that we run with get_fs() == USER_DS (CVE-2010-4258 bnc#657350).
  • patches.kernel.org/drm-radeon-kms-register-an-i2c-adapter-name-for-the-dp-aux-bus.patch: drm/radeon/kms: register an i2c adapter name for the dp aux bus.
  • patches.kernel.org/hwmon-lm85-01-use-right-freq-table-for-ADT7468.patch: hwmon: (lm85) Fix ADT7468 frequency table.
  • patches.kernel.org/i2c-pca-platform-change-device-name-of-request_irq.patch: i2c-pca-platform: Change device name of request_irq.
  • patches.suse/bootsplash-scaler: Refresh. Fix crash when bootsplash animation is used (bnc#646908)
  • patches.fixes/ACPI-debugfs-custom_method-open-to-non-root.patch: ACPI: debugfs custom_method open to non-root (bnc#659076).
  • patches.fixes/drm-radeon-kms-fix-gtt-MC-base-alignment.patch: drm/radeon/kms: fix gtt MC base alignment on rs4xx/rs690/rs740 asics (bnc#655839).

Hinweis für Besitzer einer ATI-Grafikkarte, die ATI Catalyst auf ihrem openSUSE-System installiert haben:
Wer das von mir geschriebene Rebuild-Skript über das makerpm-ati-Skript installiert hat, braucht kein neues fglrx-Kernelmodul manuell bauen. Dies geschieht nach einem Neustart vollautomatisch.

[UPDATE 05.01.2011]
Der oben genannte Hinweis zum Rebuild-Skript gilt bedauerlicherweise nur, wenn man ATI Catalyst 10.12 über das makerpm-ati-Skript neu installiert hat.

Falls man ATI Catalyst 10.12 per makerpm-ati-Skript aktualisiert hat, sollte man vor dem Kernel-Update das Skript in der Konsole als root aktivieren:

chkconfig -a boot.fglrxrebuild

Leider hat sich die Information einer nachträglichen Aktivierung des Init-Rebuild-Skript per RPM-Update als falsch herausgestellt und gilt daher bedauerlicherweise nur bei einer Neuinstallation bzw. Reinstallation.
[/UPDATE 05.01.2011]

Für alle anderen muss nach dem Kernelupdate der Rechner neugestartet werden. Dann bootet man in den Runlevel 3 und loggt sich als root ein. Anschließend den fglrx-Kernelmodul neu bauen lassen:

fglrx-kernel-build.sh

Danach mittels reboot neustarten.

Weitere Informationen: openSUSE 11.3 – proprietären Grafik-Treiber ATI Catalyst 10.12 als RPM installieren

openSUSE 11.3 – proprietären Grafik-Treiber ATI Catalyst 10.12 als RPM installieren

Hinweis: Dieser Artikel ist veraltet. Ein neuer Artikel befindet sich hier: openSUSE 11.3 – proprietären Grafik-Treiber ATI Catalyst 11.1 als RPM installieren

ATI Catalyst 10.12 (fglrx 8.801) wurde veröffentlicht. Das Skript makerpm-ati-10.12.sh steht ab sofort zum Download zur Verfügung.

Durch den Server-Umzug von phorogit.com ist bedauerlicherweise das Git Repository vom Packaging Script für den ATI Installer kaputt gegangen und konnte vor dem Code-Freeze nicht mehr behoben werden. Daher ist noch das ältere Packaging Script von meinem Vorgänger im ATI Catalyst 10.12 enthalten. Das Skript makerpm-ati-10.12.sh habe ich bereits umgeschrieben und lädt nun zusätzlich das Packaging-Script-Tarball von dieser Seite herunter und ersetzt das ältere Packaging Script. Somit habe ich genau genommen, mein Versprechen doch noch halten können. Fast hätte ich es vergessen. Durch das neue Packaging Script wird nun auch openSUSE 11.4 bzw. openSUSE Factory unterstützt. ;-)

Leider ist wieder keine Release Notes veröffentlicht worden.

[UPDATE 15.12.2010]
Ich habe das makerpm-ati-Skript (makerpm-ati Version 4.1) und das ATI Packaging Skript erneut aktualisiert. Folgende Probleme wurden behoben:

  • Das Skript fglrx-kernel-build.sh wurde überarbeitet. Somit bricht das Skript nicht mehr vorzeitig ab, sobald ein Problem beim Bauen einer bestimmten Kernelversion aufkommt.
  • Ein Patch für den Kernel >= 2.6.36 wurde hinzugefügt, um die Unterschiede der ioctl-Funktion kernelbedingt zu kompensieren.

Ein Dank geht an Franz für den umfangreichen Bugreport. ;-)

Ergänzung (makerpm-ati Version 4.2):

  • Für die Kernelversion >= 2.6.36 unter openSUSE 11.3 gab es noch das compat_alloc_user_space() Problem und wurde entsprechend mit einem Patch gelöst.

[/UPDATE 15.12.2010]

[UPDATE 17.12.2010]
Ich habe nochmal das makerpm-ati-Skript (makerpm-ati Version 4.3) und das ATI Packaging Skript aktualisiert. Folgende Feature wurde implementiert:

  • Das Skript fglrx-kernel-build.sh wurde überarbeitet: Es kann die Anzahl der CPU-Kerne ermitteln und an make übergeben. Somit wird viel schneller kompiliert.
  • Bei der Installation des RPM-Paketes ist zypper etwas gesprächiger, dass sollte die unangenehme Ausgabe-„Pause“ etwas überbrücken. ;-)

Ein Dank geht nochmal an Franz. Er hat die Idee mit der beschleunigten Kompilierung auf Multi-Core-Maschinen gehabt. Vielen Dank und weiter so. ;-)
[/UPDATE 17.12.2010]

[UPDATE 21.12.2010]
Ich schiebe jetzt noch ein Update vom makerpm-ati-Skript (Version 4.4) hinterher. Folgendes Problem wurde im ATI Packaging Script behoben:

  • Die aktuelle Version vom ATI Catalyst Control Center und vom fglrx-Treiber werden nach einem Treiber-Update jetzt im ATI Catalyst Control Center wieder richtig angezeigt.

[/UPDATE 21.12.2010]

Inhaltsverzeichnis

Einleitung

*** Wichtiger Hinweis zum ATI-Repo ***
Im ATI-Repo befindet sich noch der ältere ATI-Catalyst 10.6 (fglrx 8.741) Treiber. Daher empfehle ich den Treiber nicht unter openSUSE 11.3 zu installieren. Wenn man trotzdem diesen Treiber installiert, kann es unter Umständen passieren, dass das grafische Desktopsystem komplett ausfällt und nicht selten wird auch die Konsole völlig verzerrt, wobei man nur noch über den Failsafe-Modus wieder ins System kommt.

Diese Anleitung wie auch das Skript werden regelmäßig aktualisiert. Es lohnt sich daher öfter mal vorbei zu schauen oder im Feedreader zu speichern.

Es gibt 2 Wege den Bau des RPM-Packages durchzuführen.

  1. das RPM mit dem Skript makerpm-ati-10.12.sh bauen (empfohlen)
  2. das RPM manuell bauen (für Fortgeschrittene)

Der Vorteil zu Punkt 1: man muss sich nicht um die nötigen Packages für den Bau kümmern und man spart sich die Tipparbeit, die Zeit und die Nerven. ;-)

Die Anleitung funktioniert mit geringer Abweichung auch unter openSUSE 11.2 und openSUSE 11.1.

Hinweis: Alle genannten Schritte müssen in der Konsole im Root-Modus ausgeführt werden. Die Installation des RPM-Package „fglrx“ kann im Runlevel 3 oder auch im Runlevel 5 durchgeführt werden. Danach ist ein Neustart des Computers auf jeden Fall erforderlich.

Vorhandene fglrx-Treiber aus dem ATI-Repo sind auf jeden Fall zu deinstallieren, sonst kommt es zu Konflikten bei der Installation dieses selbstgebauten RPM-Package.

Mit vorhandene fglrx-Treiber sind z.B. folgende gemeint:

  • ati-fglrxG01-kmp-{default,desktop,pae,…}
  • ati-fglrxG02-kmp-{default,desktop,pae,…}
  • x11-video-fglrxG02

Vorhandene fglrx-Treiber auflisten lassen:

rpm -qa | grep -E 'fglrxG01|fglrxG02'

Wenn hier von RPM eine Ausgabe erscheint, müssen diese Package deinstalliert werden:

zypper rm `rpm -qa | grep -E 'fglrxG01|fglrxG02'`

Alternativ kann man auch in YaST nach fglrxG01 bzw. fglrxG02 suchen und entfernen lassen.

Hilfe, es funktioniert nicht!

Bitte haltet folgende Regel ein:

  1. Bei der Eingabe der Befehle auf mögliche Tippfehler überprüfen.
  2. Möglicherweise ist die Lösung für das Problem im Troubleshooting vorhanden.
  3. In Kommentaren lesen, ob eine Lösung zu einem Problem bereits existiert.

Wenn keines der o.g. Regel greift, dann könnt ihr mit eurem Anliegen an mich wenden. Damit ich euch helfen kann, müsst ihr erst vorarbeiten. Bitte ladet euch das Skript makerpm-ati-10.12.sh herunter und erstellt einen Report von eurem System in der Konsole:

su -c 'sh makerpm-ati-10.12.sh -ur'

Das Skript lädt das Report auf sprunge.us hoch und gibt anschließend einen Link aus. Diesen Link postet ihr in eurem Kommentar zusammen mit einer Beschreibung zu eurem Problem an mich. Ich werde mir euren Report anschauen und Hilfestellung geben, wo evtl. das Problem liegen könnte.

RPM mit dem Skript bauen

Das Skript makerpm-ati-10.12.sh ist sehr mächtig, robust und läuft vollautomatisch. Der ATI-Installer wird automatisch heruntergeladen, falls er nicht schon im Verzeichnis liegt. Zudem wird geprüft, ob die Grafikkarte vom Treiber unterstützt wird. Auf dem System werden nach den nötigen Entwicklungspaketen geprüft und ggfs. installiert. Auf Wunsch wird nach dem Bau des RPM-Packages der fglrx-Treiber installiert.

Folgende Argumente können dem Skript übergeben werden:

-b Nur das RPM-Package bauen (Standard)
-c <type> Nur X-Server konfigurieren. Monitor-Typ: single = 1 Monitor, dual = 2 Monitore (Wichtig: Nur ausführen, wenn es Probleme mit der Standardkonfiguration des X-Servers auftreten)
-d Nur den ATI-Installer downloaden
-i Das RPM-Package bauen und installieren bzw. updaten
-kms <yes|no> Kernel-Mode-Setting (KMS) aktivieren oder deaktivieren
-old2ddriver <yes|no> den alten 2D-Treiber aktivieren oder deaktivieren
-r|–report erstellt ein Report und speichert diese in eine Datei namens ati-report.txt
-u|–uninstall entfernt ATI Catalyst restlos vom System. Zuerst wird das fglrx-Package (falls vorhanden) vom System deinstalliert. Danach werden vorhandene ATI-Dateien und -Verzeichnisse entfernt. Hinweis: Falls das Rebuild-Skript installiert wurde, wird es ebenfalls entfernt und das Initskript /etc/init.d/xdm wiederhergestellt.
-ur|–uploadreport wie Option –report nur zusätzlich wird der Report auf einem NoPaste-Service sprunge.us hochgeladen und gibt bei Erfolg den Link zurück.
-ux openSUSE 11.2: Nur den gepatchten X-Server installieren. Verbessert die Zusammenarbeit mit dem fglrx-Treiber. (empfohlen)
-h Die Hilfe anzeigen lassen
-V Version des Skript anzeigen

Downloads:

Empfohlene Vorgehensweise:

Man benötigt hierfür die Konsole mit root-Rechten, um das Skript auszuführen.

Das System im Runlevel 3 starten oder wechseln:
Beim Booten: Im Bootmenü den Eintrag von openSUSE 11.3 selektieren und auf der Tastatur die Zahl „3“ und Enter drücken und als „root“ einloggen
Im laufenden Desktopsystem: Bitte vom System abmelden. Sobald die grafische Anmeldung erscheint den Tastenkürzel ALT+N oder STRG+ALT+F1 drücken, um in die Konsole umzuschalten. Dann mit dem User „root“ einloggen und mit folgendem Befehl in den Runlevel 3 wechseln:

init 3
  1. Das Skript herunterladen:
    wget http://www.sebastian-siebert.de/downloads/makerpm-ati-10.12.sh
  2. Die Prüfsummendatei herunterladen:
    wget http://www.sebastian-siebert.de/downloads/makerpm-ati-10.12.sh.sha1
  3. Die Prüfsummendatei gegen das Skript prüfen:
    sha1sum -c makerpm-ati-10.12.sh.sha1

    Idealerweise sollte folgende Ausgabe erscheinen, andernfalls stimmt etwas mit dem heruntergeladenen Skript nicht:

    makerpm-ati-10.12.sh: OK
  4. Die Rechte des Skriptes ändern und ausführbar machen:
    chown root:root makerpm-ati-10.12.sh && chmod 744 makerpm-ati-10.12.sh
  5. Das Skript mit dem Argument -i ausführen. Das RPM-Package wird im Anschluß automatisch installiert.
    ./makerpm-ati-10.12.sh -i
  6. Den Rechner neustarten:
    reboot

RPM manuell bauen

Das ist der etwas schwierigere Teil. Aber es ist nicht unmöglich. :-)

Für den Bau des RPM-Packages werden folgende Entwicklungswerkzeuge bzw. -packages benötigt:

  • gcc
  • make
  • patch
  • kernel-devel (openSUSE 11.2 / openSUSE 11.1: linux-kernel-headers)
  • kernel-source
  • kernel-{default,desktop,pae,rt,vanilla,xen}-devel
  • kernel-syms

Beim Kernel-Entwicklungspackage ist zu beachten, dass man die richtige installiert hat. Welchen Kernel zur Zeit auf dem System läuft, kann man in der Konsole abfragen:

uname -r

Bei mir ergibt beispielsweise diese Ausgabe:

2.6.34.7-0.5-desktop

Also muss im o.g. Fall der Kernel-Entwicklungspackage kernel-desktop-devel installiert sein.

Folgende Schritte werden auf einem 32-bit wie auch 64-bit openSUSE-System durchgeführt:

  1. Den Installer des proprietären Treiber von ATI herunterladen:
    https://a248.e.akamai.net/f/674/9206/0/www2.ati.com/drivers/linux/ati-driver-installer-10-12-x86.x86_64.run
    Optional: Das System im Runlevel 3 starten und als „root“ einloggen oder per init 3 wechseln.
  2. Den Bau des RPM-Packages anstoßen:
    • openSUSE 11.3 32-bit:
      sh ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE113-IA32
    • openSUSE 11.3 64-bit:
      sh ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE113-AMD64
    • openSUSE 11.2 32-bit:
      sh ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE112-IA32
    • openSUSE 11.2 64-bit:
      sh ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE112-AMD64
    • openSUSE 11.1 32-bit:
      sh ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE111-IA32
    • openSUSE 11.1 64-bit:
      sh ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE111-AMD64
  3. Das RPM-Package installieren:
    • Neuinstallation:
      rpm -ihv fglrx*8.801*.rpm
    • Update:
      rpm -Uhv fglrx*8.801*.rpm
  4. Den Rechner neustarten:
    reboot

Troubleshooting:

  1. Nach dem Booten sieht man die Konsole (Problem mit der Konfiguration des X-Servers)
  2. Nach dem Booten hat man einen schwarzen Bildschirm (Problem mit dem Kernel-Mode-Setting)
  3. Arbeitsflächen-Effekte (Compositing) in KDE 4.4 bzw. 4.5 ist nicht aktiviert
  4. Arbeitsflächen-Effekte (Compositing) in KDE 4.5 lassen sich gar nicht mehr aktivieren
  5. In Firefox oder Thunderbird erscheinen schwarze Flächen
  6. Im ATI Catalyst Control Center zeigt mir im Abschnitt „Informationen“ noch die alte ATI-Version an, obwohl ich den neuen Treiber installiert und neugestartet habe.
  7. Mein Treiber unterstützt meine Grafikkarte nicht. Was mache ich jetzt?
  1. Sollte man nach dem Booten in der Konsole landen, dann erstellt man besser eine Konfigurationsdatei des X-Servers. In diesem Fall bitte als „root“ in die Konsole einloggen und folgende Schritte durchführen.einfache Variante:

    Vorher noch in den Runlevel 3 wechseln:

    init 3

    Bei einem Monitor (Single-Modus):

    ./makerpm-ati-10.12.sh -c single

    Bei zwei Monitore (Dual-Modus):

    ./makerpm-ati-10.12.sh -c dual

    Danach den Rechner neustarten.

    Fortgeschrittene Variante:

    1. X-Server-Konfiguration verschieben, falls vorhanden:
      mv /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
    2. Von aticonfig eine neue Konfigurationsdatei erzeugen lassen: (Das Tool aticonfig kann mittlerweile auch eine X-Server-Konfiguration from Scratch erzeugen, jedoch speziell auf den fglrx-Treiber zugeschnitten. Die restliche Hardware wird vom X-Server automatisch erkannt und geladen. Dies sollte in Zukunft vorgezogen werden, falls die Autoerkennung für den fglrx-Treiber oder X -configure nicht funktioniert):Bei einem Monitor (Single-Modus):
      aticonfig --initial --input=/etc/X11/xorg.conf

      oder bei zwei Monitore (Dual-Modus):

      aticonfig --initial=dual-head --input=/etc/X11/xorg.conf
  2. Wenn man vor einem schwarzen Bildschirm sitzt und man weder die Konsole noch den Desktop sieht, dann liegt es höchstwahrscheinlich am neueingeführten Kernel-Mode-Setting (auch KMS genannt). Das Problem läßt sich durch Deaktivierung des KMS beheben.einfache Variante:

    Mit dem Skript das KMS dauerhaft deaktivieren:

    ./makerpm-ati-10.12.sh -kms no

    Fortgeschrittene Variante:

    Es gibt 2 Möglichkeiten KMS zu deaktivieren:

    • Als Bootparameter in GRUB oder LILO: nomodeset
    • KMS im Initial Ramdisk grundsätzlich deaktivieren. Der nachfolgende Befehl schaltet das KMS in der Konfiguration /etc/sysconfig/kernel auf NO_KMS_IN_INITRD=“yes“ aus.
      sed -i 's/NO_KMS_IN_INITRD=.*/NO_KMS_IN_INITRD="yes"/g' /etc/sysconfig/kernel

      Anschließend die Initial Ramdisk neubauen lassen:

      mkinitrd
  3. Falls die Arbeitsflächen-Effekte (Compositing) in KDE 4.4 bzw. 4.5 nicht mehr aktiviert sind, weil vermutlich die Erkennung der OpenGL-Schnittstelle von AMD/ATI Catalyst 10.12 fehlschlägt. Hierzu gibt es eine einfache Lösung:
    1. Im KDE-Menü auf Systemeinstellungen klicken
    2. Unter Allgemein / Erscheinungsbild & Verhalten auf Arbeitsfläche klicken
    3. In Arbeitsflächen-Effekte einrichten auf den Tab Erweitert klicken
    4. Die Checkbox Funktionsprüfungen deaktivieren aktivieren
    5. Im Tab Allgemein prüfen, ob Compositing aktiviert ist. Falls nicht, bitte aktivieren.
    6. Abschließend auf Anwenden klicken

    Jetzt sollen die Effekte in KDE wieder funktionieren. Die 3D-Anwendungen bzw. 3D-Spiele sind von diesem Problem nicht betroffen.

  4. Wenn das Compositing im OpenGL-Modus in KDE 4.5 nicht mehr aktivierbar sein sollte, dann wurde möglicherweise von KWin das Compositing komplett deaktiviert. Schuld ist die Einstellung OpenGLIsUnsafe=true in der Konfiguration /home/USERNAME/.kde4/share/config/kwinrc. Leider gibt es noch keine Möglichkeit diese Option in den Systemeinstellungen von KDE zu ändern.Man kann in der Konsole schnell und komfortabel für jeden User im Home überprüfen, ob man von dem Problem betroffen ist. Wenn bei dem nachfolgenden Befehl eine oder mehrere Dateien aufgelistet werden, so ist die Option von KWin bei dem jeweiligen User scharf geschaltet worden:
    grep -l "OpenGLIsUnsafe=true" /home/*/.kde4/share/config/kwinrc

    Es ist wichtig, dass der folgende Befehl im Runlevel 3 ausgeführt wird, sonst werden die Einstellungen von KWin wieder überschrieben. Wie man in den Runlevel 3 kommt, wird oben im Artikel beschrieben. Um das Problem mit „OpenGLIsUnsafe“ für alle User im Home-Verzeichnis zu beheben, gibt man folgenden Befehl als root in der Konsole ein:

    sed -i '/OpenGLIsUnsafe=.*/d' /home/*/.kde4/share/config/kwinrc

    Hintergrundinfo:
    Die Option OpenGLIsUnsafe kam mit der Revision 1079919 und wurde vom Autor Lucas Murray (lmurray) geschrieben. Allerdings ist ein Recheck-Button in der KDE-Einstellung laut einer TODO-Anmerkung im Quellcode in Zeile 156 geplant, um ggfs. die Option OpenGLIsUnsafe zurückzusetzen, was leider bisher noch nicht umgesetzt wurde.
    Quellcode von kwincompositing
    der Diff vom Quellcode zur Revision 1079919

  5. Falls unter Firefox oder Thunderbird schwarze Flächen erscheinen, dann liegt es in erster Linie an den neuen 2D-Treiber. Um den alten 2D-Treiber zu verwenden, führt man folgende Kommando aus.einfache Variante:
    ./makerpm-ati-10.12.sh -old2ddriver yes

    Fortgeschrittene Variante:

    aticonfig --set-pcs-str=DDX,ForceXAA,TRUE

    Hinweis: Falls das Problem mit den schwarzen Flächen in 2D-Anwendungen in der nächsten Version behoben wurde, kann man es wieder deaktivieren:

    einfache Variante:

    ./makerpm-ati-10.12.sh -old2ddriver no
  6. Fortgeschrittene Variante:

    aticonfig --del-pcs=DDX,ForceXAA
  7. Im ATI Catalyst Control Center zeigt mir im Abschnitt „Informationen“ noch die alte ATI-Version an, obwohl ich den neuen Treiber installiert und neugestartet habe.Bitte in den Runlevel 3 starten und dort den Treiber mit dem Skript komplett entfernen lassen (Achtung: Falls man die X-Konfiguration /etc/X11/xorg.conf noch manuell angepasst hat, so sollte man diese vorher sichern und später wieder zurückkopieren):
    ./makerpm-ati-10.12.sh -u

    Danach mittels mit dem Skript neuinstallieren:

    ./makerpm-ati-10.12.sh -i

    Abschließend neustarten.

  8. Mein Treiber unterstützt meine Grafikkarte nicht. Was mache ich jetzt? Hier kann man leider nur den Radeon-Treiber verwenden. Man öffnet die Konfigurationsdatei /etc/X11/xorg.conf.d/50-device.conf mit root-Rechten, um diese bearbeiten zu können. Einfach den Krunner mittels Tastenkürzel ALT+F2 öffnen und folgende Befehlszeile eingeben und abschließend mit Enter bestätigen:
    kdesu kwrite /etc/X11/xorg.conf.d/50-device.conf

    In der Zeile 4 bei Driver „radeon“ nimmt man vorne die Raute weg und speichert die Datei ab. Anschließend alle Anwendungen schließen und neustarten.

    Sollte man beim Neustart einen schwarzen Bildschirm bekommen, dann muss das KMS abgeschaltet werden. Bitte einmal diesen Workaround zum Abschalten von KMS im Failsafe-Modus durchführen.

Feedbacks sind wie immer willkommen. :-)

openSUSE 11.3 – KDE SC 4.5.4

KDE SC 4.5.4 wurde veröffentlicht und die Pakete stehen zum Download für openSUSE bereit. Außerdem wird empfohlen, wie auch in der Ankündigung auf KDE 4.5.4 zu aktualisieren.

Folgende KDE-Komponenten wurden in KDE 4.5.4 aktualisiert:

  • Plasma Desktop
  • Netbook Workspace
  • KDE Anwendungen
  • KDE Plattform

Hierzu sind weitere Fehler behoben worden:

  • kdebase (Dolphin, Konqueror, kxkb)
  • kdelibs (kate, kdecore, kdesu, khtml, kio, kioslave)

Changelog: KDE SC 4.5.4

Wichtiger Hinweis:
Wer bereits nach der unten beschriebenen Anleitung das Repo http://download.opensuse.org/repositories/KDE:/Release:/45/openSUSE_11.3/ eingebunden und aktiviert hat, muss lediglich in YaST im KDE-4.5-Repo auf „Switch system packages“ klicken oder per zypper mit einem Repo-Alias ein „Upgrade“ durchführen:

zypper dup -r "KDE_4.5"

Um die Lesbarkeit zu erhöhen wurde der Name der Repository geändert. Anstatt „KDE_4.5.x“ wird jetzt „KDE_4.5“ hier im Artikel beschrieben.

Für alle anderen, die das Repo noch nicht eingebunden haben, empfehle ich die folgende Anleitung.

Installation (YaST2):

  1. YaST2 starten.
  2. Im Menü Konfiguration -> Repositories aufrufen.
  3. Auf Hinzufügen klicken.
  4. „URL angeben“ wählen und auf Weiter klicken.
  5. Repository-Name eingeben: KDE 4.5
  6. URL des KDE-Repo für openSUSE 11.3 eingeben: http://download.opensuse.org/repositories/KDE:/Release:/45/openSUSE_11.3/
  7. Auf Weiter klicken.
  8. Das erstellte Repository „KDE 4.5“ auswählen und die Priorität auf z.B. 50 ändern.
  9. Auf Okay klicken, um die Verwaltung der Software-Repository zu schließen. Ggfs. den GPG-Schlüssel vom Repo importieren.
  10. In YaST2 dann auf Anzeigen -> Installationsquellen bzw. auf den offenen Tab Installationsquellen klicken.
  11. Auf der linken Seite das „KDE 4.5“-Repo auswählen.
  12. Im blauen Textfeld auf Switch system packages klicken.
  13. Abschließend auf Akzeptieren klicken. Sollte ein Dialogfenster bezüglich des NetworkManager auftauchen, so handelt es sich um ein veraltetes Package (Sprachdatei) und kann gelöscht werden. Das Pendant zum gelöschten Package wird dennoch installiert.
  14. Rechner neustarten und KDE 4.5.4 genießen.

Installation (zypper):

  1. KDE-Repo mit einem Alias hinzufügen:
    zypper ar -f "http://download.opensuse.org/repositories/KDE:/Release:/45/openSUSE_11.3/" "KDE_4.5"
  2. Priorität des KDE-Repo erhöhen:
    zypper mr -p 50 "KDE_4.5"
  3. Upgrade von KDE durchführen:
    zypper dup -r "KDE_4.5"
  4. Rechner neustarten und KDE 4.5.4 genießen.

Have a lot of fun! ;-)

Projekt „openSUSE Tumbleweed“

Das Projekt „openSUSE Tumbleweed“ ist angelaufen und wird von Greg Kroah-Hartman betreut. Tumbleweed wird mit Steppenläufer übersetzt.

Ankündigung aus der Mailingliste: Announcing openSUSE Tumbleweed project

Was hat ein Steppenläufer mit openSUSE Tumbleweed zu tun?

Betrachtet man diese Sträucher in einer Wüste, werden diese vom Wind oder Sturm umher getrieben. So bleibt der Steppenläufer nie auf einer Stelle. Wenn man diesen Sinn auf das Projekt überträgt, ist es nichts anderes als ein Rolling-Release für openSUSE. Einige Distributionen machen es schon wie z.B. Arch, Foresight, Gentoo, Linux Mint, Paldo, PCLinuxOS und Sidux. :-)

Ein Teil der openSUSE-User (wie auch ich) führen es in einem kleinen Rahmen durch, in dem sie einige interessante Repos eingebunden haben und so nur ein Teil der Pakete aktualisieren. Bei dem Rolling-Release werden kontinuierlich alle Pakete aktualisiert, sobald eine neue Version verfügbar ist.

Was ist eigentlich der Unterschied zwischen openSUSE Factory und openSUSE Tumbleweed?

Beide Systeme sind auf Basis eines Rolling-Release. Jedoch befinden sich die Pakete in der openSUSE Factory (Entwicklungssystem für kommende openSUSE-Versionen) noch in einem unfertigen Zustand (teilweise Beta-Versionen) und können instabil sein, während in openSUSE Tumbleweed nur stabile Pakete gebaut werden. Die Umsetzung von openSUSE Tumbleweed dürfte nicht schwieriger sein wie bei der openSUSE Factory. Im Prinzip können die gleichen Paketverwalter an beiden Systemen arbeiten.

Es ist ohne Frage ein sehr interessantes Projekt, was auch vor langer Zeit diskutiert und gefordert wurde. Das Projekt trifft genau meinen Geschmack und sehe eine glänzende Zukunft für openSUSE. ;-)

AMD hat einen neuen openSUSE Packaging Script Maintainer für den ATI Installer

Heute fällt für die openSUSE-Community Weihnachten und Ostern auf einen Tag. 8) Stefan Dirsch von Novell hat mich als neuen openSUSE Packaging Script Maintainer bei AMD vorgeschlagen. Daraufhin wurde ich in das „Linux Graphic Driver Beta“-Programm von AMD aufgenommen und erhalte somit Zugang zum Beta Linux Treiber für individuelle Tests und kann so zum openSUSE Paketbau-Skript für den ATI Installer beitragen. Das ging ganz schnell über die Bühne. 8-O Damit bin ich ab jetzt für die Pflege des openSUSE-Packaging-Skripts im ATI-Installer zuständig. *hände reib* Ein einziger Wermutstropfen gibt es leider doch. Das Git Repository vom Upstream, in der ich den überarbeiteten Code hochladen kann, ist defekt. :cry: Bevor ich da eine Änderung hochladen kann, muss ich erst eine Arbeitskopie herunterladen, was leider auch nicht möglich war. Ich hoffe, dass es schnell behoben wird. :-|

Welche Features erwarten wir im nächsten ATI Installer (ATI Catalyst 10.12) für openSUSE?

Zur Zeit überarbeite ich die Skripte und Spec-Dateien für openSUSE lokal (ohne Git Repository), um die Installation und die Wartung des Packaging-Skripts zu vereinfachen. Das ist die erste Priorität. Später werde ich einige nützliche Gimmicks integrieren. 8) Leider wurde in der Vergangenheit am openSUSE Packaging-Skript nur das Nötigste gemacht, weil der ursprüngliche Maintainer urplötzlich verschollen ist. :-?

In der Vergangenheit haben wir den ATI-Installer bemängelt, dass er bis zum heutigen Release nicht so gesprächig war. :evil: Leider sind die einfachen Linux-Anwender früher wie auch heute an der Installation des ATI-Treibers gescheitert, weil er eben nicht viel gesagt hat, wo der Schuh drückt und hat dann gleich die Tür (Löschung des Buildlogs) zugeschlagen. Die Idee eines makerpm-ati-Skript wurde vor fast einem Jahr geboren, um einfach und schnell einen ATI-Treiber zu installieren und dabei möglichst viele Fehlerquellen auszuschalten. Da kommen Nostalgie-Gedanken auf. ;-) Das Skript damals war noch sehr sehr rudimentär und erreicht erst Dank der vielen Rückmeldungen seine heutige Größe und Stärke. 8) Ich habe dem ATI-Installer bzw. Packaging-Skript beigebracht, was richtig reden bedeutet und hat von mir ein Verbose-Schalter spendiert bekommen. Falls ihr es später testet, bekommt ihr garantiert ein Déjà-vu vom makerpm-ati-Skript. ;-)

Das ist der Was-machst-du-gerade-Modus:

VERBOSE="1" ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE113-AMD64

Das ist der Erzähl-mir-alles-Modus:

VERBOSE="2" ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE113-AMD64

Ein Teil vom makerpm-ati-Skript habe ich in den Packaging Skript schon implementiert. Zum Beispiel: Die automatische Erkennung der openSUSE-Version habe ich bereits integriert. Die Angabe der openSUSE-Version und der Architektur kann in Zukunft darauf verzichtet werden:

./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE-autodetection

Und jetzt das besondere Highlight. Es gibt die Möglichkeit den Bau eines Treibers für openSUSE 11.4 bzw. openSUSE Factory freizuschalten. Das geht später einfach mit dieser Befehlszeile z.B. für die AMD64-Architektur:

UNSUPPORTED="yes" ./ati-driver-installer-10-12-x86.x86_64.run --buildpkg SuSE/SUSE114-AMD64

Der openSUSE-Packaging-Skript im ATI-Installer ist auf der Überholspur und das alles in gewohnt hoher Qualität direkt aus einer Hand. Ich werde versuchen, so viele Feature wie möglich vom makerpm-ati-Skript zu implementieren. Das ist einer meiner Beiträge an die openSUSE-Community. ;-)

Jetzt muss nur das Git Repository wieder funktionieren und zwar noch vor dem Code-Freeze. Dann habt ihr spätestens am Weihnachten einen ATI-Installer, in dem der openSUSE-Packaging-Skript von mir komplett neu geschrieben wurde. Made by Sebastian Siebert, um es so auszudrücken. Ein kleines Weihnachtsgeschenk für euch. ;-)

Mal sehen wie lange die Nachfrage nach dem makerpm-ati-Skript noch andauert. Irgendwann muss ja mal der ATI-Installer alleine stehen können. :mrgreen: