OVH Cloud OVH Cloud

kernel et driver

8 réponses
Avatar
Rémi
Salut,

J'essaye de charger, avec modprobe, un module dans mon kernel et celui ci me
retourne l'erreur suivante :
WARNING: Error inserting i2c-algo-usb
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/i2c-algo-usb.ko):
Invalid module format
FATAL: Error inserting usbvision
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/usbvision.ko): Invalid
module format

Pour compiler le driver, il a fallu que j'installe les sources de mon
kernel précompilé dans le répertoire /lib/modules/2.6.8.1-20mdk/build/
(les sources correspondent exactement à la version précompilée installée).
Dois je recompiler complètement le kernel pour que le driver puisse être
chargé par modprobe ?.

Rémi.

8 réponses

Avatar
Nicolas George
Que donne la commande :

file /lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/i2c-algo-usb.ko

 ?
Avatar
Rémi
Nicolas George wrote:

Que donne la commande :

file /lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/i2c-algo-usb.ko

?
/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/i2c-algo-usb.ko: ELF

32-bit LSB relocatable, Intel 80386, version 1 (SYSV), not stripped

Avatar
no_spam
On Sat, 27 Nov 2004 22:33:02 +0100, Rémi wrote:

Salut,

J'essaye de charger, avec modprobe, un module dans mon kernel et celui ci me
retourne l'erreur suivante :
WARNING: Error inserting i2c-algo-usb
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/i2c-algo-usb.ko):
Invalid module format
FATAL: Error inserting usbvision
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/usbvision.ko): Invalid
module format
[...]


As tu bien les modules-init-tools et pas les modutils ?
Que dit /sbin/modprobe -V ?

Avatar
Doug713705
Le samedi 27 Novembre 2004 22:33, Rémi s'est exprimé de la sorte sur
fr.comp.os.linux.configuration :

Salut,

J'essaye de charger, avec modprobe, un module dans mon kernel et celui ci
me retourne l'erreur suivante :
WARNING: Error inserting i2c-algo-usb
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/i2c-algo-usb.ko):
Invalid module format
FATAL: Error inserting usbvision
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/usbvision.ko):
Invalid module format



As tu fais :
# depmod
avant de charger le module ??

--
@+
Doug [Linux user #307925] - *Slackware* *Rulez* *;-)*
[Pourquoi t'es qui, qu'est ce que tu fais par où ?]
-- Pour me contacter enlever no-spam (2X) --

Avatar
Rémi
Doug713705 wrote:

Le samedi 27 Novembre 2004 22:33, Rémi s'est exprimé de la sorte sur
fr.comp.os.linux.configuration :

Salut,

J'essaye de charger, avec modprobe, un module dans mon kernel et celui ci
me retourne l'erreur suivante :
WARNING: Error inserting i2c-algo-usb
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/i2c-algo-usb.ko):
Invalid module format
FATAL: Error inserting usbvision
(/lib/modules/2.6.8.1-20mdk/kernel/drivers/usb/media/usbvision.ko):
Invalid module format



As tu fais :
# depmod
avant de charger le module ??

Oui quand je fais le make install il fait un depmod.

Comment procedez vous pour compiler des drivers avec un kernel precompilé
(drivers autres que ceux livrés avec le kernel),
Est il obligatoire de recompiler le kernel et d'installer ce kernel pour
qu'un driver puisse fonctionner correctement ?,
Le driver où j'ai des soucis se monte correctement avec un noyau que j'ai
recompilé et installé par mes soins (2.6.9 et 2.6.10-rc2), le problème
c'est qu'il s'agit d'un kernel standard, pas celui de la mandrake et il
pose d'autres soucis notament avec usbdevfs et harddrake, soucis que je ne
sais pas résoudre non plus...


Avatar
Doug713705
Le dimanche 28 Novembre 2004 22:43, Rémi s'est exprimé de la sorte sur
fr.comp.os.linux.configuration :

Est il obligatoire de recompiler le kernel et d'installer ce kernel pour
qu'un driver puisse fonctionner correctement ?,


Il me semble (les gurus me corrigeront) qu'il faut au moins les sources du
noyau pour lequel on compile le driver pour pouvoir le faire correctement.

J'imagine qu'il doit y avoir un package kernel-source pour ton noyau
mandrake.

Sinon, pour que le noyau que tu as compilé toi même fonctionne sans
problème, il suffit de retrouver les bonnes options qui ont permis la
compilation de ton noyau d'origine mandrake.

Pour ce faire, le truc de base (j'imagine que ça fontionnera pour mandrake)
c'est :
1/- Telecharger les sources du dernier kernel à la mode
2/- Dézipper/dérarer l'archive des sources du noyau dans /usr/src
3/- Copier le fichier /boot/config dans /usr/src/linux-version-a-la-mode :
# cp /boot/config /usr/src/linux-version-a-la-mode/.config
(ne pas oublier le . devant .config)
4/- Dans /usr/src/linux-version-a-la-mode faire
# make oldconfig
# make bzImage
# make modules
# make modules_install
5/- Copier l'image du noyau et le System.map là où il faut
6/- Modifier le lilo.conf/grub.conf en fonction de tout ça

Le fichier /boot/config n'est peut être pas au même endroit sous mandrake à
toi de le trouver.

Il est plus que probable qu'il qu'il soit aussi gzippé dans /proc/
(/proc/config.gz) auquel cas :
# cp /proc/config.gz /usr/src/linux-version-a-la-mode/.config.gz
# gunzip /usr/src/linux-version-a-la-mode/.config.gz

Puis reprendre au numéro 4.


--
@+
Doug [Linux user #307925] - *Slackware* *Rulez* *;-)*
[Pourquoi t'es qui, qu'est ce que tu fais par où ?]
-- Pour me contacter enlever no-spam (2X) --

Avatar
Jogo
Le 29 nov. 2004, Doug713705 a écrit dans fr.comp.os.linux.configuration
:

Sinon, pour que le noyau que tu as compilé toi même fonctionne sans
problème, il suffit de retrouver les bonnes options qui ont permis la
compilation de ton noyau d'origine mandrake.


C'est rarement vrai pour les grosses distribs comme Mandrake. En général
ils patchent le noyau pour ajouter des fonctionnalités (bootsplash pour mdk
est un exemple visible).
Si tu compiles un noyau "vierge" (on dit vanilla je crois), ton noyau va
marcher (normalement), mais il ne sera plus adapté à la distrib.

Avatar
Doug713705
Le jeudi 2 Décembre 2004 16:11, Jogo s'est exprimé de la sorte sur
fr.comp.os.linux.configuration :

C'est rarement vrai pour les grosses distribs comme Mandrake


J'aime bien les "petites" didtribs ;-)
--
@+
Doug [Linux user #307925] - *Slackware* *Rulez* *;-)*
[Pourquoi t'es qui, qu'est ce que tu fais par où ?]
-- Pour me contacter enlever no-spam (2X) --