[RÉSOLU] kernel panic après nvelle config


#1

J’en suis à essayer de me construire “MON” noyau 2.6.10.
Je pratique tt doucement car j’ai repris tte la config point par point pour m’apprendre.
J’ai suivi pour ça le tuto de Casteyde Christian qui me semble bien explicite pour un pauvre French comme moi.
casteyde.christian.free.fr/onlin … 11029.html
J’ai fait une première expérience en configurant les 7 premiers points plus le 9ème. Raison : le 8ème concerne les drivers et il est tellement long qu’il va me falloir du tps pour tt suivre.
J’ai testé en compilant (kpkg) à ce niveau et ma ‘Ricardo-9-sans.driv’ :laughing: fonctionne parfaitement.
Aujourd’hui, je suis passé au reste, sans encore toucher aux drivers, et j’ai donc configuré avec les 14 points sauf drivers.
J’ai compilé et , le tps d’aller boire un café :wink: , au retour, ça “bloquait” à
CC [M] drivers/media/video/videocodec.o
5 mn d’attente et ne voyant rien bouger, j’ai rechargé la console au niveau de la complilation : make kpkg …
J’ai eu l’impression que ça repartait où ça s’était arrêté mais je n’en suis pas sûr.
A la fin, création du "kernel-image-…14-sans.driv… .deb"
Je le dpkg -i et tt se passe bien avec grub et compagnie : nouvelle série.
Fébrile, je reboote mais, au bout de 20 lignes env :
kernel panic - not syncing : VFS : unable to mount root fs on unknow-block (0,0)
Question :
l’erreur est-elle due à cette interruption pendant la compil ou
à une mauvaise configuration ?
Ds ce dernier cas, elle ne peut être que sur les points 10,11,12,13 et 14 càd :
profiling support
kernel hacking
security options
cryptographic options
library routines.
Pour m’éviter de patauger pendant encore une semaine, auriez-vs une idée à me donner ?
Avec ts mes remerciements, comme d’habitude.
:wink:

PS : je n’ai pas compté les points 7 et 8 car je n’étais pas concerné et c’est pour ça que je ne compte que 14 point au lieu des 16 qui sont sur le site.


#2

Je n’ai pas encore bien approfondi la chose, mais dès qe je compile un kernel 2.6.x, tout se passe très bien, sauf la boot de la machine!!! C’est systématique, j’ai un kernel panic!!!
Je suis de ce fait moi aussi preneur de toute info suceptible de solutionner ce type de pb! :wink:


#3

est ce que vous êtes déjà parti d’une config de noyau qui marche ?
Par exemple en prenant le /boot/config-, et en le recopiant comme .config dans /usr/src/linux …
Déjà… Aprés, il est toujours loisible d’ajuster les options, mais seulement quand on a un noyau compilé qui marche…


#4

Pour mon cas : oui et je dirais plus (c’est expliqué ds mon laïus du début de ce topic) :
Chargé une 2.6.10 officielle Debian : essai = OK
Première modification de configuration en m’arrêtant avant les drivers, compilation de ce nouveau noyau “2.6.10-ricardo-xx” en ayant fait tt ce que tu m’avais appris :
"kpkg… append-to-version --blabla"
essai et ça fonctionne bien = OK
Donc ma base est bonne.
Je repars ce cette base (reprise du .config) et je complète une nouvelle configuration, sans encore changer la section driver mais en allant jusqu’au bout.
compilation tjrs avec kpkg et en changeant le ‘append’ en “-ricardo-yy” pour qu’il n’y ait pas de confusion.
La compil se passe très bien, le boot est bien pris en compte, menu.lst : tt est reconnu.
Je boot sur ce nouveau noyau et
kernel panic- not syncing : VFS : unable to mount root fs on unknow-block (0,0)
Soit il s’agit d’une erreur de config de ma part et elle ne peut se trouver que ds les section qui sont différentes, il me semble
Soit c’est au boot que ça déconne et pourtant, tt semble correct.
Bien sûr, il y a la méthode empirique : reprendre où ça fonctionne et ne modifier qu’une seule section puis compiler puis vérifier puis recommencer avec la section suivante mais ça ne fait pas tellement ‘pro’
:wink:
Voilà où j’en suis
Merci au grand Maître que tu es de bien vouloir se donner la peine de se pencher sur l’humble petit insecte que je suis :laughing:

PS :
J’ai suivi presque à la lettre ce qui est préconisé ds ce lien :
casteyde.christian.free.fr/onlin … 11029.html
Fonctionnement OK avec les changements jusqu’à drivers’, càd le point 9
Je n’ai rien changé ds le ‘driver’ de la config de départ, qui est OK
Ça ne peut donc se passer que ds les points 11 à 16 mais où ?
Si tu veux jeter un coup d’oeil à se que Casteyde préconise, ça te donnera ptet une idée .


#5

Pour ma part aussi…j’ai bien copié mon config(…) vers le /usr/src/linux…, mais ça ne marche pas…de toute façon, aucun 2.6 ne fonctionne sur mon PC…il est peut-être allergique? :laughing:


#6

J’ai eu ce même message d’erreur lors de ma compilation de mon noyau 2.6.8.
Il me semble me rappeler que c’était à cause de la non activation “en dur dans le noyau” du support ext3. Comme la partition root lancée par grub était en ext3, impossible de la lire et crack !

Es-tu en ext3 ?
L’as-tu activé dans le noyau et pas en module ?

Sinon, j’ai lu qu’une autre origine de ce problème pouvait être une absence d’initrd dans le boot loader ou tout simplement l’absence de fichier initrd ad’hoc dans /boot.


#7

Merci Korben mais j’ai justement fait attention à bien mettre ext3 et m^ ext2, en dur car je l’avais lu aussi.
Voilà mon /boot/ actuel qui fonctionne mais il y avait les m^ choses pour la compil qui bloquait (avec une petite différence ds les noms pour les reconnaître)

file:/boot/grub file:/boot/vmlinuz-2.6.10-ricardo-4.2 file:/boot/vmlinuz-2.6.10-1-686 file:/boot/System.map-2.6.10-ricardo-4.2 file:/boot/System.map-2.6.10-1-686 file:/boot/initrd.img-2.6.10-ricardo-4.2 file:/boot/initrd.img-2.6.10-1-686 file:/boot/config-2.6.10-ricardo-4.2 file:/boot/config-2.6.10-1-686
idem pour le menu.lst où tout est présent.

[quote]title Debian GNU/Linux, kernel 2.6.10-ricardo-4.2
root (hd0,6)
kernel /boot/vmlinuz-2.6.10-ricardo-4.2 root=/dev/hda7 ro
initrd /boot/initrd.img-2.6.10-ricardo-4.2
savedefault
boot

[/quote]

PS : tu as ptet raison car je viens de revérifier le .config fautif (je les garde en réserve pour contôler tant que ça n’est pas clean) et je me rends compte que j’ai quand m^ placé des trucs en ‘not set’ qui ont ptet une importance
Tu me diras ce que tu en penses

[code]# File systems

CONFIG_EXT2_FS=y

CONFIG_EXT2_FS_XATTR is not set

CONFIG_EXT3_FS=y

CONFIG_EXT3_FS_XATTR is not set

CONFIG_JBD=y

CONFIG_JBD_DEBUG is not set

CONFIG_REISERFS_FS=y

CONFIG_REISERFS_CHECK is not set

CONFIG_REISERFS_PROC_INFO is not set

CONFIG_REISERFS_FS_XATTR is not set

CONFIG_JFS_FS is not set

CONFIG_XFS_FS is not set

CONFIG_MINIX_FS is not set

CONFIG_ROMFS_FS is not set

CONFIG_QUOTA is not set

CONFIG_DNOTIFY is not set

CONFIG_AUTOFS_FS is not set

CONFIG_AUTOFS4_FS=y
[/code]


#8

Si tu utilises un initrd, tu n’as pas besoin de mettre quoi que ce soit en dur dans ton noyau (hormis cramfs), par contre tu dois bien préciser --initrd à la compilation de ton noyau pour que l’initrd soit générer lors de l’installation.


#9

Bon à savoir, merci.
je vais vérifier si cramfs est bien en dur.
Quant à initrd : oui, je compile comme suit :
make-kpkg --append-to-version “-ricardo-date_du_jour” --initrd kernel_image modules_image
Qu’en penses-tu, c’est ce qu’a préconisé Mattotop ?


#10

Ricardo, je viens de regarder mon .config et oh surprise, ce n’est pas du tout ce que je t’ai dit !

[code]# File systems

CONFIG_EXT2_FS=m
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y
CONFIG_EXT2_FS_SECURITY=y
CONFIG_EXT3_FS=m
CONFIG_EXT3_FS_XATTR=y
CONFIG_EXT3_FS_POSIX_ACL=y
CONFIG_EXT3_FS_SECURITY=y
CONFIG_JBD=m

CONFIG_JBD_DEBUG is not set

CONFIG_FS_MBCACHE=m
CONFIG_REISERFS_FS=m

CONFIG_REISERFS_CHECK is not set

CONFIG_REISERFS_PROC_INFO is not set

CONFIG_REISERFS_FS_XATTR is not set

CONFIG_JFS_FS=m
CONFIG_JFS_POSIX_ACL=y

CONFIG_JFS_DEBUG is not set

CONFIG_JFS_STATISTICS=y
CONFIG_FS_POSIX_ACL=y
CONFIG_XFS_FS=m
CONFIG_XFS_RT=y
CONFIG_XFS_QUOTA=y
CONFIG_XFS_SECURITY=y
CONFIG_XFS_POSIX_ACL=y
CONFIG_MINIX_FS=m
CONFIG_ROMFS_FS=m
CONFIG_QUOTA=y
CONFIG_QFMT_V1=m
CONFIG_QFMT_V2=m
CONFIG_QUOTACTL=y
CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=m[/code]
Ca doit donc bien être mon initrd qui sauve la mise, comme l’a dit BobX.
Malheureusement, ça ne va pas beaucoup t’aider, j’en suis désolé.


#11

[quote=“Ricardo”]Bon à savoir, merci.
je vais vérifier si cramfs est bien en dur.
Quant à initrd : oui, je compile comme suit :
make-kpkg --append-to-version “-ricardo-date_du_jour” --initrd kernel_image modules_image
Qu’en penses-tu, c’est ce qu’a préconisé Mattotop ?[/quote]

Je sais pas si modules_image t’est vraiment, vu que cette cible sert à compiler des modules supplémentares au noyau, dont les sources se trouvent dans /usr/src/modules. Donc c’est inutile pour une image standard du noyau.
Au vu du message d’erreur, je pense fortement que tu as désactivé le support de cramfs, ou bien le support de l’initrd.


#12

J’étais absent depuis hier AM et je rentre juste.
Merci pour vos réponses, je vais aller voir ça de près pour cramfs.
Suite : j’ai comparé un .config OK et celui qui me pose problème. Entre-autres, crams
En effet, c’est certainement là que ça se passe :
Files system/miscellaneous/CRAMFS
en ‘Y’ sur le OK et en ‘m’ sur le KO
Je vais donc tester en ne changeant que ce seul point.
Réponse ce soir.
Si c’est le cas, le tuto que j’ai suivi se plante mais il n’est pas spécial à debian, il est vrai :
casteyde.christian.free.fr/onlin … 12961.html

[code]A.11.4. Sous-menu « Miscelaneous filesystems »

Ce sous-menu du menu « File systems » vous permettra de prendre en charge divers systèmes de fichiers utilisés par d’autres systèmes d’exploitation. La plupart de ces systèmes de fichiers ne sont pas finalisés, et le support de l’écriture est partiel ou dangereux. La réponse recommandée aux options de ce sous-menu est ‘N’. [/code]

Alors que cramfs se trouve ds cette section :cry:


#13

Oui, le cramfs est une spécificité de Debian pour l’initrd. Généralement, l’initrd est plutôt en ext2 (sous redhat entre autres), ce qui fait que ces distrib demandent ext2 en dur dans le kernel pour pouvoir monter l’initrd.


#14

Eureka !
il s’agissait bien de mettre CRAMFS en dur et non en module.
Merci de votre aide et à la prochaine, qui ne saurait tarder.
En effet, il me reste le gros morceau des drivers à éplucher :cry: