# [SOLVED] 2.6.17-gentoo-r8 VFS/Grub kernel panic

## rmunsch

pardon me, see

https://forums.gentoo.org/viewtopic-t-468522.html

for this issue which is apparently affecting many

i can't seem to delete it as i was too slow and there's apparently a reply already. sorry   :Embarassed: 

SOLUTION:

In the FAQ that Wynn mentions, the following section caught my eye about SATA:

```

1) SATA

[b]First you do not want[/b]

   Device Drivers  --->

    ATA/ATAPI/MFM/RLL support  --->

[ ]     Support for SATA (deprecated; conflicts with libata SATA driver)

[b]What you need is this high level support[/b]

   Device Drivers  --->

   SCSI device support  --->

<*>   SCSI disk support

     SCSI low-level drivers  --->

<*> Serial ATA (SATA) support

```

Hmm, i says to myself.

Sure enough, oldconfig did what it was supposed to do:  i apparently was using the depreciated "support for sata" in .16 -

When the new options for high level support came up as [NEW] as i ran down the list in .17, i enabled it -

and the Intel-specific chipset driver was a freakin' <M>odule.

Noting later in menuconfig the (depreciated) next to the Old Way, i removed it.

I therefore successfully turned off all kinds of SATA support in .17.  Yay!

Thanks for all responses.  And remember that make oldconfig won't stop you from *not* adding new stuff that it turns out you need.   :Laughing: Last edited by rmunsch on Mon Sep 18, 2006 7:14 pm; edited 3 times in total

----------

## wynn

 *Quote:*   

> VFS: Cannot open device "sda2" or unknown-block (0,0) 

 This usually means that support for the SATA chipset is not compiled in.

You may find some helpful hints in [FAQ] KC13: I just installed a new kernel and it won't boot: if anything isn't clear or you need more help. please post back here.

----------

## rmunsch

ah thank you.  For context of the above reply  :Smile:  here is my original text:

(i am confused, however.  If 2.6.16 had it, and i made oldconfig for .17, why on earth would sata support be *removed*?!

 :Evil or Very Mad: 

-----

So yeah.  Here's a funny story...

I can boot into 2.6.16-gentoo-r9 with no problems.

I used the .config from it as the basis for 17-r8, yet it cannot boot!  And they have identical entries in grub.conf...

The funny thing is it loads the boot image (both cases) so i know it's finding the drive.  The fs is reiserfs and i verified that both kernels have it compiled in.

My grub.conf contains the following:

```
default 1

timeout 10

splashimage=(hd0,1)/boot/grub/splash.xpm.gz

title=Gentoo Linux 2.6.16-gentoo-r9

root (hd0,1)

kernel /boot/linux-2.6.16-gentoo-r9 root=/dev/sda2 udev ro

title=Gentoo Linux 2.6.17-gentoo-r8

root (hd0,1)

kernel /boot/linux-2.6.17-gentoo-r8 root=/dev/sda2 udev ro
```

.16 works and .17 doesn't.  When trying to boot .17, i get

VFS:  Cannot open device "sda2" or unknown-block (0,0)

Please append a valid "root=" option etc blah

Then it kernelpanics with a "not synching: VFS: unable to mount root FS on unknown-block(0,0)"

What the holy heck?

----------

## NeddySeagoon

rmunsch,

You have a bit nissing from your kernel. unknown-block (0,0) means it cannot communicate with the drive at all.

I assume you have SATA, rather than real SCSI.

If so you are missing SCSI disk support ot the Low level SATA driver under SCSI, Low Level Drivers, SATA.

All these things need to be built in, modules cannot be loaded until the root filesystem is mounted.

Did you know you can migrate the kernel .config from your old kernel to a new one ?

Copy the .config file from the old kernel to the new one, then in the new kernel tree, run make oldconfig.

It will ask you questions about new options and migrate your old settings.

At the end of that you have a legal .config file for your new kernel.

You can look it over with your favourite config tool if you want.

----------

## rmunsch

Possibly found: i in fact have the Intel 82801 sata 'troller going on here.   I will go hunt down and see if 1) somehow support for this was removed, or 2) i managed to pull a bonehead maneuver and manually removed/moduled it when changing from .16 to .17.

Still, i *did* start out with "make oldconfig," which is supposed to avoid these issues...

----------

## NeddySeagoon

rmunsch,

 *Quote:*   

> Still, i *did* start out with "make oldconfig," 

 Thats step 2, after you have copied the old .config over.

----------

## rmunsch

 *NeddySeagoon wrote:*   

> rmunsch,
> 
> Did you know you can migrate the kernel .config from your old kernel to a new one ?
> 
> Copy the .config file from the old kernel to the new one, then in the new kernel tree, run make oldconfig.
> ...

 

I am a bit confused by this, as i rather explicitly mention that i did the very thing you suggest.  However, see my updated top post for what happened.

Thanks anyway.

EDIT: ah, i see what you meant now.  Fair enough, i didn't think it was worth mentioning the physical step of copying .config over.  Of course i did.  I also plugged the thing into power first and connected the cables  :Wink:  .

(cute.  I'm using the new kernel now, and eth0 fails to come up at boot, "unknown interface eth0..."  but running a "/etc/init.d/net.eth0 start" works immediately.  o_O  guess i'll be looking that up next)

----------

## NeddySeagoon

rmunsch,

Rule one of doing remote diagnostics based on whet people tell you is to assume as little as possible.

You would be surprised how many posters here have actually fixed there problem but don't know it because of some trivial 'assumed' step thats been missed.

----------

## RaceTM

This thread is interesting, and is related to an error message I am now getting.  Thanks for the post, I will double check my kernel config tonight to ensure I dont have the depreciated device support enabled mentioned above

----------

