Re: pb chargements modules

Page principale

Répondre à ce message
Auteur: Edgar Bonet
Date:  
À: guilde
Anciens-sujets: Re: pb chargements modules - J'ai trouvé
Sujet: Re: pb chargements modules
Le mardi 05 mars, Ika OSCAOS a écrit :
> J'ai essayé aussi avec modprobe, mais j'ai le même resultat.
> Et depmod me donne l'erreur
> depmod : *** Unresolved symbols in
> /lib/modules/2.4.7-10/kernel/drivers/scsi/ft.o
> que ce soit avec depmod -a ou au moment du boot. C'est bien la le problème.


Ah, ok. Il fallait le dire tout de suite : c'est le genre de précision
qu'il est bon de donner quand on demande de l'aide sur un problème.

Pour le coup ton problème est bizarre. Si ft.o se charge bien après
scsi_mod.o et sd_mod.o, c'est vraisemblablement que tous les symboles
qu'il utilise sont bien définis. Serait-ce un bogue de depmod ? Il ne
regarde pas dans les fichiers qu'il faut ?

Tu peux essayer de regarder toi même quels sont les symboles définis et
utilisés par les modules qui t'intéressent. Ça revient à faire le
travail de depmod à la main. Tu utilises pour ça la commande nm :

    $ nm scsi_mod.o | grep " scsi_*register_module"
    00002380 T scsi_register_module_Rfa20b7b0


Ceci veut dire que scsi_mod.o définit (T) le symbole
scsi_register_module_Rfa20b7b0. Je n'ai aucune idée de ce que signifie
le suffixe _Rfa20b7b0, tu ne l'as peut-être pas chez toi.

    $ nm sd_mod.o | grep " scsi_*register_module"
             U scsi_register_module_Rfa20b7b0


Donc sd_mod.o utilise (U) le symbole en question

    $ nm st.o | grep " scsi_*register_module"
             U scsi_register_module_Rfa20b7b0


de même que st.o que je prends ici comme exemple de module SCSI car je
n'ai pas de ft.o dans ma Mandrake. Au fait, c'est quoi ft.o ? Un module
de Frace Télécom ?

Si le symbole que depmod ne trouve pas (scsi_unregister_module, n'est-ce
pas ?) est bien défini dans scsi_mod.o, alors il faut essayer de
comprendre pourquoi depmod ne le trouve pas. Est-ce qu'il cherche dans
le bon répertoire (option -b) ?

> J'ai rajouté scsi_mod en fasse de ft.o dans le fichier module.dep et
> ça semble fonctionner


Ce n'est pas la vraie solution : il faut trouver pourquoi depmod ne fait
pas ça tout seul. C'est pourtant une bonne solution d'intérim que
j'allais te suggérer. Attention pourtant, modules.dep peut être régénéré
au boot. Tu as peut-être intérêt à ajouter la dépendance en question via
un script sed, juste après la commande depmod au boot (probablement dans
rc.sysinit).

Bon courage !

Edgar.

PS : S'il te plaît, ne m'envoie pas des réponses en double (sur la liste
et en privé). Une seule copie me suffit largement !

-- 
Edgar Bonet                         Tel:    +33 476 881 096
Laboratoire Louis Néel -- CNRS      Mobile: +33 677 197 939
25 av. des Martyrs, BP 166          Fax:    +33 476 881 191
38042 Grenoble cedex 9, France      e-mail: bonet@???