# Kernel has me stumped (SOLVED :)

## oneandoneis2

Okay: I was using 2.6.11, and everything worked great. But I'd got 2.6.13 sources courtesy of portage, figured it was as good a time as any to do an upgrade.

So, used my existing 2.6.11 .config file to make the new kernel, then ran "make" and "make modules_install", then manually copied the new bzImage to /boot because I prefer doing it that way.

Rebooted with the new kernel. It failed. 

```
VFS: Cannot open root device 'sda6' on unknown block (0,0)

Kernel panic - not syncing: VFS: unable to mount root filesystem on unknown block (0,0)
```

Blast, something in the new version has broken something in my config, I think. So I boot off my old 2.6.11 kernel, and take a look.

But I hunt and I hunt, and it all looks OK to me. I start to wonder if there's a problem with the .config file I'm using. It should be the same config as the working kernel, but mistakes do happen. . .

So I try compiling a new 2.6.11 kernel with the same config as the 2.6.13. Then I try & boot it. It fails, same error.

Blast it, the config itself is at fault then, I think, and reboot yet again with the good kernel.

Or, what USED TO BE the good kernel, because now I have problems with it, too. No modules will load - I have no sound from esd, no temperatures from lm_sensors, nothing. lsmod shows nothing but the nvidia module.

And yet cross-checking shows everything to be set properly. Error messages tell me that the i2c-nforce and snd_intel8x0 modules can't be found, for instance. And yet, the config has both of these selected as modules, so they should exist & work. Right??

I have looked & looked but I cannot find anything wrong with my kernel config. But now I can't even use the 'safe' kernel without problems. 

Does anyone have any suggestions on what on Earth is wrong with the blasted thing? Google hasn't helped! Ideally, I'd like to know how to fix the config so I could at least compile a bootable kernel, but I'd settle for just some working modules right now!Last edited by oneandoneis2 on Sun Nov 06, 2005 10:48 pm; edited 2 times in total

----------

## NeddySeagoon

oneandoneis2,

First, when you copy the .config file to a new kernel you must run 

```
make oldconfig
```

and answer for any new items. That produces a legal .config for the new kernel.

Second, "unknown block (0,0)" means that the kernel cannot talk to you hard drive. Thats normally because you have left out either the chipset driver for your motherboard chipset, SCSI card or whatever, or the high level driver is missing (or both). Its unlikely that changed between kernels.

Your kernel modules are seperated by kernel version in /lib/modules/`uname -r`, so its difficult to mess them up accidently.

```
modprobe -l
```

will show all the compiled modules for the running kernel.

----------

## oneandoneis2

I love the Gentoo community  :Smile: 

 *Quote:*   

> "unknown block (0,0)" means that the kernel cannot talk to you hard drive. Thats normally because you have left out either the chipset driver for your motherboard chipset, SCSI card or whatever, or the high level driver is missing (or both).

 

Yep, that was the issue all right - I'd been looking for a filesystem support error, and hadn't even thought about the disc itself. The hard drive is a SATA disk. On looking, I first noticed that the ATA/ATAPI/MFM/RLL support section has a Support for SATA (deprecated; conflicts with libata SATA driver) entry, and then on consulting my MoBo manual & SATA support in SCSI device support -> SCSI low-level drivers, I see that the chipset for my board, Silicon Image, is unchecked.

So I added it in, made the new kernel, and rebooted. 

And whattaya know, suddenly everything works again! Sound, sensors, and all.

Thanks ever so much!  :Smile: 

----------

