LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Kernel Panic: Unable to mount VFS (https://www.linuxquestions.org/questions/slackware-14/kernel-panic-unable-to-mount-vfs-407628/)

pafrica 01-24-2006 09:49 PM

Kernel Panic: Unable to mount VFS
 
Hello,

i started a fresh slackware 10.2 install and i wanted to use the 2.6.13 kernel that came with the download. long story short, i compiled the 2.6.13 kernel, did the usual and i get this error msg at boot (reconstructed from memory):

Kernel Panic: Unable to mount VFS or uknown-block (3, 5)
please specify a correct "root=" option at boot

i've googled around and tried the two solutions most often proposed: removing "read-only" from the relevant section in lilo.conf creating an initrd with a module for reiserfs. i've tried both and no dice.

the relevant section of my lilo.conf:

Code:

label = Kernel_2.6
image = /boot/vmlinuz
root = /dev/hda5
initrd = /boot/initrd.gz
#readonly

i can boot the 2.4 kernel just fine and i dont need an initrd to do so. btw, my partitions are formatted using reiserfs.

i'm at the end of my wits. can anyone help?

win32sux 01-24-2006 11:10 PM

have you tried compiling the kernel with reiserfs support built-in, such that no initial ramdisk is needed??

also, why don't you give the latest 2.6 version a shot (2.6.15.1 at the time of this post)??

pafrica 01-24-2006 11:44 PM

hello.

i have support for ext2/3 and reiserfs all baked into the kernel. i saw a forum which suggested disabling advanced partitioning and tried that as well. still no dice.

reason i wont download the lastest kernel is because of several horrow stories floating around about slack 10.2 and said kernel version. besides, i'm bandwidth-limited :)

cwwilson721 01-24-2006 11:55 PM

I'm running 2.6.15 w/10.2 . I had no problems with it. The "Horror" stories are from those who don't compile correctly. The 2.6.13 is fine too. Boot with 2.4, and try to compile again. Make sure that reiserfs is NOT a module. Should boot then

pafrica 01-25-2006 02:18 AM

I've recompiled as you've said but still nothing.

I decided to do the whole thing over again and the result is the same. Just in case i did something wrong here's what i did:

1.) installed the following packages from my slackware DVD:
Code:

kernel-source-2.6.13-noarch-1.tgz
    kernel-modules-2.6.13-i486-1.tgz
    kernel-headers-2.6.13-i386-1.tgz
    kernel-generic-2.6.13-i486-1.tgz

2.) built reiserfs support into the kernel

3.) disabled option for advanced partition selection (because so many forums point to this as the culprit)

4.) compiled kernel

5.) edited lilo.conf to have

Code:

label=kernel2.6
image=/boot/vmlinuz
root=/dev/hda5
read-only

and ran lilo.

The error message i get is

Code:

VFS: Cannot open root device "305" or unknown-block (3, 5)
please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block (3, 5)

i thought fifth time would be a charm but i guess not. can anyone help out?

win32sux 01-25-2006 02:53 AM

Quote:

Originally Posted by pafrica
VFS: Cannot open root device "305" or unknown-block (3, 5)
please append a correct "root=" boot option
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block (3, 5)

i assume you are 100% sure that /dev/hda5 (root=/dev/hda5) is the correct root partition, right?? i can't think of anything else right now... :confused:

cwwilson721 01-25-2006 03:09 AM

Wait. hda5? Can't have more than 4 primary partitions, I think, and make it bootable.....I remember something somewhere about that....

shotwellj 01-25-2006 03:21 AM

Quote:

Originally Posted by pafrica
I've recompiled as you've said but still nothing.

I decided to do the whole thing over again and the result is the same. Just in case i did something wrong here's what i did:

1.) installed the following packages from my slackware DVD:
Code:

kernel-source-2.6.13-noarch-1.tgz
    kernel-modules-2.6.13-i486-1.tgz
    kernel-headers-2.6.13-i386-1.tgz
    kernel-generic-2.6.13-i486-1.tgz


If you're trying to compile your own kernel, you do not need to install the kernel-generic, or kernel-modules packages. Those are already compiled packages. Moreover, you generally do not want to install the kernel-headers. They are only included for the rare instance that someone may need them.

If you just want to run a 2.6 kernel, the slackware compile works great for most people. Just follow the instructions in README.initrd (in the same directory as the kernels).


Regards,
Jacob

ronanio 01-25-2006 03:44 AM

run fdisk /dev/hda and then print the partitions

are you sure the installed partition is bootable

pafrica 01-25-2006 01:33 PM

Quote:

Originally Posted by cwwilson721
Wait. hda5? Can't have more than 4 primary partitions, I think, and make it bootable.....I remember something somewhere about that....

Only windows and a few other OS's have the limitation of being unable to boot unless they're on a primary partition. Linux does not have this limitation and doesnt care whether it is on an extended or primary partition, much less if that partition that it is on is active (bootable) or not.

and win32sux, yes, i am positive my / is on /dev/hda5.

thanks, though

pafrica 01-25-2006 01:35 PM

shotwellj, will try that out soon.

pafrica 01-25-2006 03:07 PM

ok, this is just getting out of hand.

I downloaded the 2.6.15.1 kernel from kernel.org and unpacked it to /usr/src/linux-2.6.15.1 and changed the /usr/src/linux symlink accordingly.

so now i did #make menuconfig and it tells me it can't find asm-generic/errno.h.

The exact message:
Code:

HOSTCC  scripts/basic/split-include
In file included from /usr/include/linux/errno.h:4,
                from /usr/include/bits/errno.h:25,
                from /usr/include/errno.h:36,
                from scripts/basic/split-include.c:26:
/usr/include/asm/errno.h:4:31: asm-generic/errno.h: No such file or directory
make[1]: ***[scripts/basic/split-include] Error 1
make: ***[scripts_basic] Error 2

i checked to make sure my download wasnt corrupt, and it wasnt. then i tried making a symlink ln -s /usr/src/linux/include/ /usr/include. there was a thread here on LQ with the exact same problem and that was the solution but it didnt work for me. errno.h does exist in /usr/src/linux/asm-generic and in /usr/include/asm.

this is really driving me nuts, it's never happened before. perhaps i have a botched install?

dracolich 01-25-2006 05:22 PM

Did you run make clean before make menuconfig? Sometimes that helps.

I had the kernel VFS error recently when building a 2.6.14.1 kernel. I was going throught the partition options disabling what I thought I didn't need. Turns out I needed to keep the DOS partition support in order for the kernel to recognize the drive. This is on a laptop with just an hda1. It originally had XP until I dumped it and completely reformatted as ext3. With no trace of M$ it still needed that option.

Might be worth a try enabling DOS partition support as builtin.

allpurpbox 01-25-2006 06:21 PM

You need to include the reiserfs fs in the kernel, not as a module, which you have done. You also need disk support, ide, etc built into the kernel as well, not as a module. Otherwise the kernel does not know what a ide hard drive is!

You also need ramdisk support built into the kernel as well since slack uses it to boot the image. Unless you have edited grub or lilo not to of course. :)

pafrica 01-26-2006 12:46 AM

i got sick of thinking it was a flawed install so i wiped my linux partitions clean and started over. downloaded kernel 2.6.15.1 source and compiled, same error.

i have a hunch it's got something to do with SATA. i'm trying to install on an asus z71v laptop. the thing with this laptop is that it can take either a sata or a pata hard drive using a changeable adapter. when i use the test26.i kernel from my slackware dvd, the drive is reported as sata, on 2.4.31, it says otherwise. On the other hand, this may not be an issue since i think SATA and PATA operate using the same interface.

so anyway, this is wishful *bump* hoping someone might have an answer.


All times are GMT -5. The time now is 03:30 PM.