LILO and Kernel issues
Hello everyone,
Plain and simple, I have just (re)compiled a new 2.6.22(.3) kernel. When I run lilo after copying bzImage to /boot/2.6.22 I receive the following error: /proc/misc: No entry for device-mapper found Is device-mapper driver missing from kernel? Failure to communicate with kernel device-mapper driver. However after this lilo goes on to add my windows and other linux partitions with apparently no problems. When I try to boot the new kernel, I get a kernel panic with the following error: VFS: Cannot open root device "803" or unknown-block(8,3) Please append a correct "root=" boot option; here are the available partitions: 0300 117220824 hda driver: ide-disk 0301 58605088 hda1 0302 2000092 hda2 0303 56613060 hda3 1600 4194302 hdc driver: ide-cdrom Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,3) I have gone through these forums and googled everything I can think of to fix this problem. The closest I can come to my problem is this thread http://www.linuxquestions.org/questi...d.php?t=575822 However, it doesn't fix my problems. As far as I can tell all of the pertinent options in the kernel config are selected since at one point I used the same .config file as the operational 2.6.21 kernel. I have also tried compiling the new kernel from scratch. If anyone can help I would greatly appreciate it. My hardware and operational kernel specs are as follows: Intel Core 2 Duo T7200 Intel ICH7 Chipsets (Audio, PCI Bridge, USB Controllers, ISA Bridge, IDE Interface SATA Controller, and SMBus) Nvidia GeForce Go 7300 Graphics 120 GB SATA hard drive Slackware 11 with 2.6.21 Kernel |
What procedure are you using to compile the kernel (ie step by step)?
You mentioned copying over bzImage, did you also copy System.map? |
I think kernel 2.6.20 and newer have abondoned the Pata disk names and are using the SCSI/Sata/USB convention.
It is possible that some versions may still support hda, hdb, hdc and hdd but in the main they are now known as sda, sdb, sdc and sdd. If your kernel, which is a 2.6.22, complains not able to find 803 for sda3 because Lilo is still addressing it as 303 for hda3 then the above change could be the cause. I think you can overcome it by altering /etc/lilo.conf all the hdx reference to sdx. Not so sure if your update amends the /etc/fstab too but similar changes need to be carried out there as well. |
im having the same problem here. i havent rebooted yet, so i dont know if i'll get a kernel panic. im rebuilding 2.6.22.3 with the device mapper built into the kernel.
currently 2.6.22.1 building 2.6.22.3 with same options + device mapper support /dev/sda4 swap swap defaults 0 0 /dev/sda3 / reiserfs defaults 1 1 /dev/sda1 /boot ext3 defaults 1 2 /dev/sda2 /home jfs defaults 1 2 #/dev/cdrom /mnt/cdrom auto noauto,owner,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 proc /proc proc defaults 0 0 /dev/md0 /raid0 jfs defaults 1 2 /dev/md1 /raid1 ext2 defaults 1 2 # LILO configuration file # generated by 'liloconfig' # # Start LILO global section append="Slackware" lba32 boot = /dev/sda message = /boot/boot_message.txt prompt timeout = 300 # Override dangerous defaults that rewrite the partition table: change-rules reset # Normal VGA console vga = normal LILO version 22.8 image = /boot/vmlinuz # initrd = /boot/initrd.gz root = /dev/sda3 label = Rufus read-only # Linux bootable partition config ends # Generic begin image = /boot/generic initrd = /boot/initrd.gz root = /dev/sda3 label = Generic read-only # Generic end # Failsafe entry config begins image = /boot/huge root = /dev/sda3 label = Huge read-only # Failsafe entry config ends Error produced: /proc/misc: No entry for device-mapper found Is device-mapper driver missing from kernel? Failure to communicate with kernel device-mapper driver. |
To me if a user gets a kernel panic then that has no business to do with the boot loader.
The duty of the boot loader is to load the kernel. If the kernel is faulty there is nothing Lilo can do because by the time kernel takes over Lilo is gone. I think a self upgrade of a kernel is always risky because some components belonging to the older version may not work satisfactorily with the new kernel. |
The only thing I found through google that may be of use is at http://www.archlinux.org/pipermail/a...ch/013740.html where they suggest modprobe dm-mod (prior to running lilo). Have you tried that?
|
Slackware 12.0 comes with a lilo that requires the device-mapper to be loaded into the kernel (as a built-in or loaded as a module).
The default Slackware kernels have the dm-mod and dm-crypt drivers built into the kernel, that is why you don't see this message with a normal Slackware installation. Keep CONFIG_BLK_DEV_DM enabled in your kernel config and the error should go away once you run that kernel. Eric |
Quote:
Quote:
Quote:
Quote:
Thanks everyone for the help so far! |
To help clear up future questions about my lilo.conf and fstab, their contents are below. image = /boot/2.6.21 is the currently operational linux.
/dev/sda2 swap swap defaults 0 0 /dev/sda3 / reiserfs defaults 1 1 /dev/sda1 /ntfs ntfs ro 1 0 /dev/hdc /mnt/cdrom auto noauto,owner,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 proc /proc proc defaults 0 0 none /proc/bus/usb usbfs devgid=46,devmode=0666 0 0 # LILO configuration file # generated by 'liloconfig' # # Start LILO global section boot = /dev/sda message = /boot/boot_message.txt prompt timeout = 1200 lba32 compact # Override dangerous defaults that rewrite the partition table: change-rules reset # VESA framebuffer console @ 1024x768x64k vga = 791 # Normal VGA console # vga = normal # VESA framebuffer console @ 1024x768x64k # vga=791 # VESA framebuffer console @ 1024x768x32k # vga=790 # VESA framebuffer console @ 1024x768x256 # vga=773 # VESA framebuffer console @ 800x600x64k # vga=788 # VESA framebuffer console @ 800x600x32k # vga=787 # VESA framebuffer console @ 800x600x256 # vga=771 # VESA framebuffer console @ 640x480x64k # vga=785 # VESA framebuffer console @ 640x480x32k # vga=784 # VESA framebuffer console @ 640x480x256 # vga=769 # End LILO global section # Windows bootable partition config begins other = /dev/sda1 label = Windows table = /dev/sda # Windows bootable partition config ends # Linux bootable partition config begins image = /boot/vmlinuz root = /dev/sda3 label = Linux read-only image = /boot/2.6.21 root = /dev/sda3 label = Linux-2.6.21 read-only image = /boot/2.6.22 root = /dev/sda3 label = Linux-2.6.22 read-only # Linux bootable partition config ends |
I'm exactly under the same problem! :scratch:
Any other idea? |
Quote:
|
I've found the problem! :D
Go to the "menuconfig" and into the "Device Drivers" options you have to select "Serial ATA (prod) and Parallel ATA (experimental) drivers". Now inside this you will find one more submenu where you're gonna have to select your sata controller.
They have changed the order of it's drivers into the menuconfig, that's why our old (not so old) config files didn't work. One more thing, if you do use iptables/netfilter, then pay attention for this too. Because I've rebooted my machine after the recompiling and some netfilter drivers wasn't loading (for the same reason, menu changes), so now I've added them back and I'm recompiling the kernel again. I hope the netfilter will work now and, of course, I hope this will also solve your problems. |
Just to let you all know:
The netfilter drivers problem is actually solved. Therefore, you just do the same and your problem will probably be solved too. |
sparc86 thanks for the info, I went back through and verified the selections and those were selected along with the Intel ICH driver for PATA/SATA, but still no joy on the lilo and kernel panic.
|
Intel ICH driver for PATA/SATA ? There's no such driver on that list.
The only intel drivers I saw was: *Intel PATA MPIIX support and *Intel PATA old PIIX support Read this info about the "Serial ATA (prod) and Parallel ATA (experimental) drivers" option. │ CONFIG_ATA: │ │ │ │ If you want to use a ATA hard disk, ATA tape drive, ATA CD-ROM or │ │ any other ATA device under Linux, say Y and make sure that you know │ │ the name of your ATA host adapter (the card inside your computer │ │ that "speaks" the ATA protocol, also called ATA controller), │ │ because you will be asked for it. │ │ │ │ NOTE: ATA enables basic SCSI support; *however*, │ │ 'SCSI disk support', 'SCSI tape support', or │ │ 'SCSI CDROM support' may also be needed, │ │ depending on your hardware configuration. As is written, you may need to add also SCSI disk support to your disk to work. |
All times are GMT -5. The time now is 05:57 AM. |