kernel panic

I have compiled kernel version 2.6.12 in my linux box mandrake 10.1. I have followed www.digitalhermit.com/linux/Kernel-Build-HOWTO.html instructions. I have copied .config file from /usr/src/linux and lightly modified it (only the processor type) by xconfig. I have compiled the source and modules. I have configured lilo.

This is what I have in :


/boot directory

-rw-r--r--  1 root root     512 mar  6  2005 boot.0200
-rw-r--r--  1 root root     512 mar 10  2005 boot.0800
-rw-r--r--  1 root root 1223389 mar 13  2005 bzImage
-rw-r--r--  1 root root 1297010 ott 24 19:13 bzImage-2.6.12
lrwxrwxrwx  1 root root      32 ott 26 09:18 config -> config-2.6.8.1-10mdk-i586-up-1GB
-rw-r--r--  1 root root   59391 ott 24 15:22 config-2.6.12
-rw-r--r--  1 root root   60295 set  8  2004 config-2.6.8.1-10mdk-i586-up-1GB
-rw-r--r--  1 root root    5032 set 14  2004 diag1.img
-rw-r--r--  1 root root   16796 set 14  2004 diag2.img
drwxr-xr-x  2 root root    4096 mar  6  2005 grub/
-rw-r--r--  1 root root  139440 ott 25 22:19 initrd-2.6.12.img
-rw-r--r--  1 root root  168377 ott  9 22:02 initrd-2.6.8.1-10mdk-i586-up-1GB.img
-rw-rw-r--  1 root root  141287 mar 12  2005 initrd-i586-up-1GB.img
lrwxrwxrwx  1 root root      36 mar  6  2005 initrd.img -> initrd-2.6.8.1-10mdk-i586-up-1GB.img
-rw-r--r--  1 root root     256 mar  6  2005 it-latin1.klt
lrwxrwxrwx  1 root root      40 ott 26 09:20 kernel.h -> /boot/kernel.h-2.6.8.1-10mdk-i586-up-1GB
-rw-r--r--  1 root root     537 mar  6  2005 kernel.h-2.6.8.1-10mdk-i586-up-1GB
-rw-------  1 root root  377344 ott 24 19:20 map
lrwxrwxrwx  1 root root      15 ott 24 19:20 message -> message-graphic
-rw-r--r--  1 root root  280792 ott  9 22:02 message-graphic
-rw-r--r--  1 root root     141 mar  6  2005 message-text
-rw-r--r--  1 root root  545730 ott 24 19:09 old_System.map
lrwxrwxrwx  1 root root      36 ott 25 19:18 System.map -> System.map-2.6.8.1-10mdk-i586-up-1GB
-rw-r--r--  1 root root  586635 ott 24 15:22 System.map-2.6.12
-rw-r--r--  1 root root  545730 set  8  2004 System.map-2.6.8.1-10mdk-i586-up-1GB
lrwxrwxrwx  1 root root      33 mar  6  2005 vmlinuz -> vmlinuz-2.6.8.1-10mdk-i586-up-1GB
-rw-r--r--  1 root root 1297010 ott 24 15:22 vmlinuz-2.6.12
-rw-r--r--  1 root root 1278195 set  8  2004 vmlinuz-2.6.8.1-10mdk-i586-up-1GB


and in /lib/modules

drwxr-xr-x  3 root root 4096 ott 25 17:58 2.6.12/
drwxr-xr-x  3 root root 4096 ott 23 19:11 2.6.8.1-10mdkcustom/
drwxr-xr-x  3 root root 4096 ott 23 19:11 2.6.8.1-10mdk-i586-up-1GB/

When I start with new kernel:

"
.................
.................

insmod: error inserting /lib/jbd.ko: error 8

loading ext3.ko module
ext3: version magic 2.6.8.1-10mdk-i586-upGB gcc3-4 should be 2.6.12 K6 gcc 3-4
insmod error inserting /lib/ext3.ko: errorno = 8

........

mount error 19 mounting ext 3
kernel panic - not syncing : not init found
try passing init = option to kernel"

Could you give me any suggestion? Thanks

:confused:

P.S. : My linux box keep on working fine, and I recompiled the kernel just for fun.....It is only curiosity! :slight_smile:

Seems like some kernel part is to be built as module but u did not compile/install it, especially for filesystem which is ext3. Your box ended up with nothing mounted :smiley:
My guess is you did not compile modules

make modules; make modules_install

i dont really remember correct syntax ... google a bit :o

I have already typed in /home/linux 2.6.12 :wink: :

make modules
make modules_install

and then followed instructions.I guess at boot time the system try to load a module compiled for the kernel 2.6.8 installed by mandrake. In fact


.....
ext3: version magic 2.6.8.1-10mdk-i586-upGB gcc3-4 should be 2.6.12 K6 gcc 3-4
.....

My question is why :confused: ? Thank you andryk.

PS Modules compiled for 2.6.12 kernel are in /lib/modules/2.6.12 :).

This topic is very difficult, I know, but I have time :wink:

The last time I experienced this problem was that I did not update the system map files. The kernel will not automatically find the modules from the kernel image. The system map files must be edited to match the kernel version to get the right modules to load.

This is a bit of a "pain" in Linux, as I would expect that the boot loader could read the kernel and know which modules directory to open. Maybe in the future, we hope!

See this link

Also,

Visit this link - also discusses system.map in Linux kernel building.