Anzeige:
Ergebnis 1 bis 14 von 14

Thema: nouveau wird geladen - trotz blacklist

  1. #1
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Beiträge
    2.990

    nouveau wird geladen - trotz blacklist

    hallo

    system: opensuse 11.3, kde4.4.4, nvidia

    da ich den nvidia treiber verwenden will, muss ich dafuer sorgen das nouveau nicht geladen wird.
    aber das modul wird immer geladen...

    folgendes habe ich schon gemacht:


    Code:
    sysconfig/kernel: NO_KMS_IN_INITRD="yes"
    Code:
    echo "blacklist nouveau" >> /etc/modprobe.d/50-blacklist.conf
    wie koenne ich noch verhindern, dass das modul geladen wird?

  2. #2
    Rain_maker
    Gast
    Ein

    Code:
    blacklist dingenskirchen
    sorgt AFAIK nur dafür, daß ein Kernelmodul nicht automatisch von udev geladen wird, wenn er $PASSENDES_GERÄT_ZUM_TREIBER findet.

    Sollte aber an irgendeiner Stelle ein expliziter Ladebefehl z.B. in einem Script stehen, dann nutzt das nichts.

    Sieht man auch wunderbar daran, daß man ein "geblacklistetes" Modul "dingenskirchen" immer noch händisch mit "modprobe dingenskirchen" laden kann.

    Also muss man hier vielleicht ein klein wenig "brutaler" zu Werke gehen.

    Mit

    Code:
    install dingenskirchen /bin/true
    als "Blacklisteintrag" wird auch das Laden mittels modprobe ausgeschaltet bzw. es wird statt des Ladens "/bin/true" ausgeführt.

    Greetz,

    RM

  3. #3
    Rain_maker
    Gast
    Da wäre noch etwas:

    Zitat Zitat von muell200 Beitrag anzeigen
    Code:
    echo "blacklist nouveau" >> /etc/modprobe.d/50-blacklist.conf
    Das ist eine schlechte Idee, weil

    Code:
    rpm -qf /etc/modprobe.d/50-blacklist.conf
    sysconfig-0.72.6-2.6.1.x86_64
    diese Datei möglicherweise (und in diesem Fall sehr wahrscheinlich, da hier die Module drin stehen, die der Distributor auf der Blacklist haben will, was sicher seine Gründe hat) beim nächsten Update von sysconfig überschrieben wird und dann das Theater von vorne los geht.

    Es gibt zwei Möglichkeiten.

    a) Eigene Einträge in /etc/modprobe.d/99-local.conf

    Auch diese Datei ist Bestandteil eines Paketes (module-init-tools), aber beim Bau von RPMs kann man angeben, ob eine Datei überschrieben werden darf oder auch nicht, hier würde ich _vermuten_, daß diese Datei nicht bei einem Update angefasst wird.

    b) Eigene Einträge in eine eigene Datei, die nicht zu einem Paket gehört

    So mache ich das immer, vor allem gebe ich dann jeder Datei einen Namen, der mir gleich sagt, was da drin sein könnte, hier wäre das zum Bleistift ein Name wie dieser

    Code:
    /etc/modprobe.d/51-blacklist-nouveau.conf
    Dann wird da 100%ig nichts automatisch überschrieben.

  4. #4
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Beiträge
    2.990
    Zitat Zitat von Rain_maker Beitrag anzeigen
    Code:
    /etc/modprobe.d/51-blacklist-nouveau.conf
    Dann wird da 100%ig nichts automatisch überschrieben.
    stimmt - aber wird das modul wird trotzdem geladen

    das mit dem install schaue ich mir noch an
    -> wenn es mal ruhiger wird

    danke fuer den tip
    Geändert von muell200 (12.11.10 um 11:17 Uhr)

  5. #5
    Rain_maker
    Gast
    Zitat Zitat von muell200 Beitrag anzeigen
    stimtm - aber wird das modul wird trotzdem geladen
    Logisch, daran ändert das nichts, da ging es nur darum, wo man allgemein einen eigenen Eintrag am besten hinschreibt.

    Zitat Zitat von muell200 Beitrag anzeigen
    das mit dem install schaue ich mir noch an
    Ich vermute, daß hier die Startscripte von Xorg "in die Suppe spucken" und explizit das Modul nouveau laden, wenn es gefunden wird.

    IIRC "probiert" Xorg beim Start die vorhandenen Module durch (nicht nur Kernelmodule sondern auch die Erweiterungen wie dri, glx, etc. die früher mal in die xorg.conf rein mussten) und behält das, was "passt", was ja für nouveau gilt und damit wird die Blacklist in gewisser Weise "ausgehebelt".

    Ist allerdings nur eine Vermutung.

  6. #6
    Registrierter Benutzer
    Registriert seit
    Jan 2008
    Beiträge
    2.551
    Zitat Zitat von muell200 Beitrag anzeigen
    aber wird das modul wird trotzdem geladen
    Schau mal, welche module in der initrd verbacken sind:

    Code:
    grep INITRD_MODULES /etc/sysconfig/kernel

  7. #7
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Beiträge
    2.990
    Zitat Zitat von Aqualung Beitrag anzeigen
    Code:
    grep INITRD_MODULES /etc/sysconfig/kernel
    Code:
    INITRD_MODULES="ahci pata_jmicron thermal ata_generic ata_piix processor fan"
    DOMU_INITRD_MODULES="xennet xenblk"

  8. #8
    Registrierter Benutzer
    Registriert seit
    Jan 2008
    Beiträge
    2.551
    Wie hast Du den nvidia-Treiber installiert?

  9. #9
    Rain_maker
    Gast
    Idee richtig, aber Ansatz möglicherweise unvollständig.

    In INITRD_MODULES werden nur "zusätzliche" Module aufgenommen, die nicht schon durch einen anderen Mechanismus hinein kommen.

    Um ganz auf Nummer sicher zu gehen, sollte man direkt in die initrd schauen, was da drin ist.

    Code:
    /sbin/lsinitrd /boot/initrd-$(uname -r) | grep .ko
    Trotzdem würde ich vor dem "brutalen Blacklisten" mit /bin/true gar nicht weiter suchen.

    Greetz,

    RM

  10. #10
    Registrierter Benutzer Avatar von towo2099
    Registriert seit
    Feb 2002
    Ort
    Pößneck
    Beiträge
    4.567
    Im Normalfall reicht doch auch ein nomodeset oder nouveau.modeset=0 als Kernelparameter um das Laden von Nouveau zu unterbinden.
    Signatur nach Diktat Spazieren gegangen ;)

  11. #11
    Rain_maker
    Gast
    Zitat Zitat von towo2099 Beitrag anzeigen
    Im Normalfall reicht doch auch ein nomodeset oder nouveau.modeset=0 als Kernelparameter um das Laden von Nouveau zu unterbinden.
    Ich muss zugeben, daß ich zwar wusste, daß es da "irgendeinen" Bootparameter gibt, aber eben nicht genau welchen.

    Auch wenn ich davon ausgehe, daß diese Lösung funktionieren wird, so würde ich trotzdem um die oben von mir genannten Ausgaben bitten, denn mich interessiert, woher dieses Problem stammt, daß ein einfaches Blacklisten nicht ausreicht.

    Es geht hauptsächlich darum, ob/wie man z.B. die Pakete aus dem NVidia-Repo verbessern könnte, daß der User eben nicht mehr nacharbeiten muss, egal wie.

    In den Paketen aus dem NVidia-Repo wird im Postinstallscript auch ein "blacklist nouveau" in eine Datei unter /etc/modprobe.d gepackt, offensichtlich reicht das nicht (immer) aus.

    Zwei weitere Fragen wären:

    1) Wie wurde diese Änderung gemacht?

    Code:
    sysconfig/kernel: NO_KMS_IN_INITRD="yes"
    Per Hand mit einem Texteditor oder mit YaST (etc/sysconfig-Editor)?

    2) Falls die Antwort auf 1) "Texteditor" lautet, wurde danach die initrd auch neu gebaut (mkinitrd)? Der /etc/sysconfig-Editor in YaST macht unter Umständen eben doch etwas mehr als eine händische Änderung mit $TEXTEDITOR_DEINER_WAHL, bzw. man könnte da ansetzen, falls er es in diesem Fall nicht getan hat.

    Es geht mir hier also nicht nur um eine Lösung sondern auch um eine Analyse, was faul gewesen sein könnte und da habe ich lieber -wie in diesem Thread- ein "Versuchskarnickel", welches $AHNUNG vom System hat als einen kompletten Anfänger.

  12. #12
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Beiträge
    2.990
    Zitat Zitat von Rain_maker Beitrag anzeigen
    Auch wenn ich davon ausgehe, daß diese Lösung funktionieren wird,
    nein - modul wird immer noch geladen

    Zitat Zitat von Rain_maker Beitrag anzeigen
    so würde ich trotzdem um die oben von mir genannten Ausgaben bitten,
    habe es noch nicht getestet
    ( habe den richtigen syntax noch nicht gefunden )

    Zitat Zitat von Rain_maker Beitrag anzeigen
    Code:
    sysconfig/kernel: NO_KMS_IN_INITRD="yes"
    Per Hand mit einem Texteditor oder mit YaST (etc/sysconfig-Editor)?
    mit einem texteditor - nein mkinit habe ich nicht gestartet...
    mache nachdem ich den post fertig habe

    so dann starte ich mal mkinit - den rechner neu

  13. #13
    Registrierter Benutzer
    Registriert seit
    Sep 2003
    Beiträge
    2.990
    Zitat Zitat von Rain_maker Beitrag anzeigen
    I
    2) Falls die Antwort auf 1) "Texteditor" lautet, wurde danach die initrd auch neu gebaut (mkinitrd)?
    das war es! - mercy

  14. #14
    Registrierter Benutzer
    Registriert seit
    Jul 2005
    Ort
    Wien-Umgebung
    Beiträge
    205
    Hy
    hab gerade ein FC14 installiert da ist der nouveau auch im initramfs fix eingebunden, daher klappt eine normale installation mit ./Nxxx.run nicht.
    Klappt aber einfach wenn man in die /boot/grub/grubconf bei den Kernelparametern ein
    Code:
    rdblacklist=nouveau
    mitgibt.
    Danach nach den Neustart wie gewonnt X killen und den nvidiainstaller durchlaufen lassen. Denn nouveau-Treiber blacklistet er dabei und legt eine neue Xorg.conf.
    PS Der Eintrag rdblacklist=nouveau gehört in die grub.conf fix reingeschrieben da sonnst wieder der nouveau von der initrd geladen wird.

    Tschau El-Biero
    Ich hoffe das das auch bei SuSe so ist und einigen weiterhilft.

Ähnliche Themen

  1. Kernelmodul soll NICHT automatisch geladen werden!
    Von chriskc im Forum Kompilieren von Kernel und Sourcen
    Antworten: 1
    Letzter Beitrag: 25.08.02, 13:36
  2. Dienst(e) wird/werden nicht geladen
    Von Annette im Forum System installieren und konfigurieren
    Antworten: 4
    Letzter Beitrag: 03.06.02, 19:48
  3. Trotz unresolved symbols, alle module geladen...??
    Von Schurl im Forum Kompilieren von Kernel und Sourcen
    Antworten: 3
    Letzter Beitrag: 30.07.01, 08:21
  4. HiSax Modul kann nicht geladen werden
    Von im Forum Anbindung an die Aussenwelt
    Antworten: 6
    Letzter Beitrag: 10.08.00, 15:27
  5. MPG Movies ruckeln unter Linux trotz P2 266 und Voodoo 3
    Von Catonga im Forum Linux Allgemein
    Antworten: 9
    Letzter Beitrag: 12.01.00, 21:13

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •