[PLUG] Kernel 2.6.24 build on T61
Terry Griffin
griffint at pobox.com
Wed Feb 6 21:47:58 UTC 2008
>
> I'm trying to do a kernel build for my T61 in order to get the
> (theoretically more) stable wifi driver and generally make it work like I
> would how I would like it to work.
>
> Unfortunately, I get a kernel panic on every build I've tried. Message
> follows:
>
> BIOS EDD facility v0.16 2004-Jun-25, 6 devices found
> VFS: Cannot open root device "sda6" or unknown-block(0,0)
> Please append a correct "root=" boot option; here are the available
> partitions:
> 0300 4194302 hda driver: ide-cdrom
> Kernel panic - not syncing: VFS: Unable to mount root ofs on
> unknown-block(0,0)
>
> Now, this seems pretty obvious to me, but the fix has been elusive.
>
> My assumption here is that this is what's going on: The SATA
> controller driver isn't loading (it's requiring a module or something that
> can't load until the drives are mounted). Sound reasonable?
>
> It says the only devices available are ide-cdrom, but I'm at a loss as to
> figure out why.
>
> The Debian-built kernel works fine presumably because of the initrd image
> that holes a massive crap-pile of drivers that's loaded before the hard
> disk is mounted. (By the way, that seems like an amazing piece of magic
> to me. How the hell do you read the kernel and initrd image from a disk
> controller whose driver you don't have loaded? But please don't get
> side-tracked by this question, I'm dying to figure out what's going on
> here.
>
> I can attach my .config, if anyone wants to grep it. But let it suffice
> to say for the moment that I am definitely building the kernel with SATA
> support and all of the intel chipsets related as non-module kernel
> components.
>
> Man, I have math to do.
> J.
>
Did you make a new initrd to go with your new kernel? If you install
the kernel by doing "make install" I think it does this automatically.
If you installed the kernel image manually then you have to make the
initrd yourself.
mkinitrd /boot/initrd-2.6.24.img 2.6.24
And then add it to you grub.conf following the same pattern as your
stock Debian kernel.
The mkinitrd utility is *supposed* to add whatever modules are needed to
boot your machine. If not then either there's a bug in mkinitrd (unlikely)
or as you suspect the correct modules weren't built in the first place.
Terry
More information about the PLUG
mailing list