• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Laden eines Treiber, Problem mit modprobe, modules

tvtwm

Newbie
Hallo Leute,

ich habe da ein Problem mit dem laden eines Treibers (Aureal-Soundkartentreiber, spielt aber für das Problem keine Rolle).

Dieses gute Stück versuche ich auf einem PIII 700 unter einem Suse 8.2 zum rennen zu kriegen. Um es vorweg zunehmen, das Teil läuft. Ich weiss nur nicht, wie ich ihn automatisiert starten kann.

Der Treiber selbst besteht aus mehreren Komponeten, von denen eine nur in binärer Form vorliegt (au8820.o, asp20.o). Und es gibt eine Abhängigkeit zu soundcore.o. Die Abhängigkeiten sind in der modules.dep richtig enthalten.

Der (prorietäre Teil) des Treibers hat nun die Macke, dass irgenwo darin codiert ist, er wäre mit einem gcc2 und nicht mit einem gcc3 kompiliert wäre, was im übrigen falsch ist.
Code:
p700:~ # modprobe au8820
/lib/modules/2.4.20-4GB/misc/au8820.o: The module you are trying to load (/lib/modules/2.4.20-4GB/misc/au8820.o) is compiled with a gcc
version 2 compiler, while the kernel you are running is compiled with
a gcc version 3 compiler. This is known to not work.
/lib/modules/2.4.20-4GB/misc/au8820.o: insmod /lib/modules/2.4.20-4GB/misc/au8820.o failed
/lib/modules/2.4.20-4GB/misc/au8820.o: insmod au8820 failed
Der Autor / Hersteller der Soundkarte kennt das Problem und sagt, man müsse das Laden des Treiber mittels insmod -f erzwingen. Da dann aber der *.dep-Stack nicht abgearbeitet wird, muss soundcore.o zuvor manuell geladen werden. Also:

Code:
p700:~ # modprobe snd
p700:~ # insmod -f au8820
Using /lib/modules/2.4.20-4GB/misc/au8820.o
Warning: The module you are trying to load (/lib/modules/2.4.20-4GB/misc/au8820.o) is compiled with a gcc
version 2 compiler, while the kernel you are running is compiled with
a gcc version 3 compiler. This is known to not work.
Warning: loading /lib/modules/2.4.20-4GB/misc/au8820.o will taint the kernel: no license
  See http://www.tux.org/lkml/#export-tainted for information about tainted modules
Warning: loading /lib/modules/2.4.20-4GB/misc/au8820.o will taint the kernel: forced load
Module au8820 loaded, with warnings
Und tatsächlich, es klappt alles. :D

So, und nun meine Frage, was muss ich im modules.conf eintragen, damit dies ausgeführt wird? So eine ähnliche Situation ist in den Manpages nicht wirklich enthalten.

Vielen Dank für alle Tipps.

Ergänzung:
Hab die Hexänderung versucht und es funktioniert. Danke.
 

oc2pus

Ultimate Guru
man modprobe.conf

Abschnitt:
install modulename command...

man modules.conf
Abschnitt "pre-install" und "post-install".

oder probiere mal (Sicherungskopie VORHER anlegen!)
Load the object file in a binary editor (emacs and hexl-mode works fine) and find all "gcc2" and change them to "gcc3".[Worked for me on Suse 8.2./quote]
 
Oben