# Crash --> Kernel Panic ReiserFS

## Tim77

Here's the story:

I tried to mount a cd-rom which caused my whole system to freeze (btw: I'm   using Gentoo Linux, not MS Windows...). I had to shutdown the pc the hard way. After rebooting (Kernel 2.6.something) I got this error:

```
Kernel panic: VFS: Unable to mount rootfs on hde6
```

Booting with Kernel 2.4.something gave me this one:

```
FAT: bogus logical sector size 0

read_super_block: can't find a reiserfs filesystem on (dev 21:06, block 64, size 1024)

read_super_block: can't find a reiserfs filesystem on (dev 21:06, block 8, size 1024)

Kernel panic: VFS: Unable to mount root fs on 21:06
```

So I assume, my reiserfs is screwed up, right? Is there a way to fix this?

----------

## wolfpakk

Is hde6 your root partition? If not, then u can try to pass some commandline options in grub/lilo. The reason i ask is just because hde6 is not the most usual partition to have a rootfs on, therefore i ask  :Smile: 

----------

## Tim77

Yes, it is.

----------

## nevynxxx

It's more frequent to get that if reiserfs is not compiled into the kernel, but that seems like a long shot in your situation. I would try booting a live or knoppix cd and see if you can mount from there, either should have some tools to help and if not, you can grab them from knoppix.

----------

## Tim77

This really don't think that it is a kernel issue because it used to work for month.

I took the hd out of the pc and I am ready to put it into my other gentoo based pc. Ready to Rock'n'Roll. What tools do I need?

----------

## nevynxxx

 *Tim77 wrote:*   

> This really don't think that it is a kernel issue because it used to work for month.
> 
> I took the hd out of the pc and I am ready to put it into my other gentoo based pc. Ready to Rock'n'Roll. What tools do I need?

 

emmm reiserfsck is a good place to start, the help is good.

----------

## Tim77

 *Quote:*   

> This really don't think that it is a kernel issue

 

What did I wrote..?  :Shocked: 

Some additional information. Now I put it in the 2nd pc and from now on the disk shall be known as "hdd". fdisk tells me this:

```
    Gerät Boot      Start         End      Blocks   Id  System

/dev/hdd1   *           1        1305    10482381    c  W95 FAT32 (LBA)

/dev/hdd2            1306        2610    10482412+   f  W95 Ext'd (LBA)

/dev/hdd3            2611        4960    18876375    c  W95 FAT32 (LBA)

/dev/hdd4            4961        7475    20201737+   c  W95 FAT32 (LBA)

/dev/hdd5            1306        1318      104391   83  Linux

/dev/hdd6            1319        2545     9855846   83  Linux

/dev/hdd7            2546        2610      522081   82  Linux Swap
```

This means, that the "root" drive we are talking about is now hdd6, right?

```
root [/dev] # reiserfsck /dev/hdd6

reiserfsck 3.6.11 (2003 www.namesys.com)

 

*************************************************************

** If you are using the latest reiserfsprogs and  it fails **

** please  email bug reports to reiserfs-list@namesys.com, **

** providing  as  much  information  as  possible --  your **

** hardware,  kernel,  patches,  settings,  all reiserfsck **

** messages  (including version),  the reiserfsck logfile, **

** check  the  syslog file  for  any  related information. **

** If you would like advice on using this program, support **

** is available  for $25 at  www.namesys.com/support.html. **

*************************************************************

 

Will read-only check consistency of the filesystem on /dev/hdd6

Will put log info to 'stdout'

 

Do you want to run this program?[N/Yes] (note need to type Yes if you do):Yes

 

reiserfs_open: the reiserfs superblock cannot be found on /dev/hdd6.

 

Failed to open the filesystem.

 

If the partition table has not been changed, and the partition is

valid  and  it really  contains  a reiserfs  partition,  then the

superblock  is corrupted and you need to run this utility with

--rebuild-sb.

 

Abgebrochen

root [/dev] #

```

I guess

```
reiserfsck --rebuild-sb /dev/hdd6
```

will be the next line. But I better ask first...

----------

## Tim77

 *Quote:*   

> What did I wrote..?

 

 :Embarassed: 

reiserfsck is asking me strange questions: How do I know the block size? It suggests 4096.

----------

## nevynxxx

Looks like the rebuild is the only way. I have done this to a live partition and I think a rebuild tree after or some such, I got the whole thing back, it shouldn't be too big a deal. Then again, with filesystems there is alweays the chance of loosing all the data.

Your call, but I'd go for it.

----------

## Tim77

So I did it:

```
root [/dev] # reiserfsck --rebuild-sb /dev/hdd6

reiserfsck 3.6.11 (2003 www.namesys.com)

 

*************************************************************

** If you are using the latest reiserfsprogs and  it fails **

** please  email bug reports to reiserfs-list@namesys.com, **

** providing  as  much  information  as  possible --  your **

** hardware,  kernel,  patches,  settings,  all reiserfsck **

** messages  (including version),  the reiserfsck logfile, **

** check  the  syslog file  for  any  related information. **

** If you would like advice on using this program, support **

** is available  for $25 at  www.namesys.com/support.html. **

*************************************************************

 

Will check superblock and rebuild it if needed

Will put log info to 'stdout'

 

Do you want to run this program?[N/Yes] (note need to type Yes if you do):Yes

 

reiserfs_open: the reiserfs superblock cannot be found on /dev/hdd6.

 

what the version of ReiserFS do you use[1-4]

        (1)   3.6.x

        (2) >=3.5.9 (introduced in the middle of 1999) (if you use linux 2.2, choose this one)

        (3) < 3.5.9 converted to new format (don't choose if unsure)

        (4) < 3.5.9 (this is very old format, don't choose if unsure)

        (X)   exit

1

 

Enter block size [4096]:

 

 

No journal device was specified. (If journal is not available, re-run with --no-journal-available option specified).

Is journal default? (y/n)[y]: y

 

Did you use resizer(y/n)[n]: n

rebuild-sb: no uuid found, a new uuid generated (9274c0fe-bb22-4f1f-bfbb-a2e95196eb9d)

 

rebuild-sb: You either have a corrupted journal or have just changed

the start of the partition with some partition table editor. If you are

sure that the start of the partition is ok, rebuild the journal header.

Do you want to rebuild the journal header? (y/n)[n]: y

Reiserfs super block in block 16 on 0x1646 of format 3.6 with standard journal

Count of blocks on the device: 2463961

Number of bitmaps: 76

Blocksize: 4096

Free blocks (count of blocks - used [journal, bitmaps, data, reserved] blocks): 0

Root block: 0

Filesystem is NOT cleanly umounted

Tree height: 0

Hash function used to sort names: not set

Objectid map size 0, max 972

Journal parameters:

        Device [0x0]

        Magic [0x0]

        Size 8193 blocks (including 1 for journal header) (first block 18)

        Max transaction length 1024 blocks

        Max batch size 900 blocks

        Max commit age 30

Blocks reserved by journal: 0

Fs state field: 0x1:

         some corruptions exist.

sb_version: 2

inode generation number: 0

UUID: 9274c0fe-bb22-4f1f-bfbb-a2e95196eb9d

LABEL:

Set flags in SB:

Is this ok ? (y/n)[n]: y

The fs may still be unconsistent. Run reiserfsck --check.

 
```

But now it checks for 45 minutes without any output:

```
root [/dev] # reiserfsck /dev/hdd6

reiserfsck 3.6.11 (2003 www.namesys.com)

 

*************************************************************

** If you are using the latest reiserfsprogs and  it fails **

** please  email bug reports to reiserfs-list@namesys.com, **

** providing  as  much  information  as  possible --  your **

** hardware,  kernel,  patches,  settings,  all reiserfsck **

** messages  (including version),  the reiserfsck logfile, **

** check  the  syslog file  for  any  related information. **

** If you would like advice on using this program, support **

** is available  for $25 at  www.namesys.com/support.html. **

*************************************************************

 

Will read-only check consistency of the filesystem on /dev/hdd6

Will put log info to 'stdout'

 

Do you want to run this program?[N/Yes] (note need to type Yes if you do):Yes

###########

reiserfsck --check started at Fri Mar 12 21:02:13 2004

###########

Replaying journal..

```

Is this normal?

----------

## nevynxxx

Hmmm not sure about the 45 mins without output thing. Is that 45 mins bfore you gave up, before it stopped or before you posted? Once its stopped you will be able to tell if it worked by mounting it and a few 'ls' 's

----------

## Tim77

After waiting 45 minutes and really nothing happened, I rebooted the pc... I couldn't even stop reiserfsck by ctrl+c or "kill -9 <id>". And this happens every time I try to "reiserfsck /dev/hdd6".

Mounting also doesn't work:

```
root [/home/tim] # mount -t reiserfs /dev/hdd6 /lagerhalle

mount: Falscher Dateisystemtyp, ungültige Optionen, der

       »Superblock« von /dev/hdd6 ist beschädigt oder es sind

       zu viele Dateisysteme eingehängt

root [/home/tim] #
```

Which means "Wrong file system, invalid options, corrupted superblock or too many mounted file systems."

Perhaps the following information help?

```
root [/home/tim] # reiserfsck --rebuild-sb /dev/hdd6

reiserfsck 3.6.11 (2003 www.namesys.com)

 

*************************************************************

** If you are using the latest reiserfsprogs and  it fails **

** please  email bug reports to reiserfs-list@namesys.com, **

** providing  as  much  information  as  possible --  your **

** hardware,  kernel,  patches,  settings,  all reiserfsck **

** messages  (including version),  the reiserfsck logfile, **

** check  the  syslog file  for  any  related information. **

** If you would like advice on using this program, support **

** is available  for $25 at  www.namesys.com/support.html. **

*************************************************************

 

Will check superblock and rebuild it if needed

Will put log info to 'stdout'

 

Do you want to run this program?[N/Yes] (note need to type Yes if you do):Yes

Reiserfs super block in block 16 on 0x1646 of format 3.6 with standard journal

Count of blocks on the device: 2463961

Number of bitmaps: 76

Blocksize: 4096

Free blocks (count of blocks - used [journal, bitmaps, data, reserved] blocks): 0

Root block: 0

Filesystem is NOT cleanly umounted

Tree height: 0

Hash function used to sort names: not set

Objectid map size 0, max 972

Journal parameters:

        Device [0x0]

        Magic [0x0]

        Size 8193 blocks (including 1 for journal header) (first block 18)

        Max transaction length 1024 blocks

        Max batch size 900 blocks

        Max commit age 30

Blocks reserved by journal: 0

Fs state field: 0x1:

         some corruptions exist.

sb_version: 2

inode generation number: 0

UUID: 9274c0fe-bb22-4f1f-bfbb-a2e95196eb9d

LABEL:

Set flags in SB:

 

Super block seems to be correct

 

root [/home/tim] #

```

I rebuildt the superblock, but I don't know if it was ok to choose the default size of 4096 blocks.

----------

## Tim77

Is there no one who can help me with this?

----------

## Tim77

Now I tried reiserfsck version 3.6.13:

```
root [/home/tim] # reiserfsck --rebuild-sb /dev/hdd6

reiserfsck 3.6.13 (2003 www.namesys.com)

 

*************************************************************

** If you are using the latest reiserfsprogs and  it fails **

** please  email bug reports to reiserfs-list@namesys.com, **

** providing  as  much  information  as  possible --  your **

** hardware,  kernel,  patches,  settings,  all reiserfsck **

** messages  (including version),  the reiserfsck logfile, **

** check  the  syslog file  for  any  related information. **

** If you would like advice on using this program, support **

** is available  for $25 at  www.namesys.com/support.html. **

*************************************************************

 

Will check superblock and rebuild it if needed

Will put log info to 'stdout'

 

Do you want to run this program?[N/Yes] (note need to type Yes if you do):Yes

 

Did you use resizer(y/n)[n]: n

rebuild-sb: wrong block count occured (2463961), fixed (2463952)

Reiserfs super block in block 16 on 0x1646 of format 3.6 with standard journal

Count of blocks on the device: 2463952

Number of bitmaps: 76

Blocksize: 4096

Free blocks (count of blocks - used [journal, bitmaps, data, reserved] blocks): 0

Root block: 0

Filesystem marked as NOT cleanly umounted

Tree height: 0

Hash function used to sort names: not set

Objectid map size 0, max 972

Journal parameters:

        Device [0x0]

        Magic [0x0]

        Size 8193 blocks (including 1 for journal header) (first block 18)

        Max transaction length 1024 blocks

        Max batch size 900 blocks

        Max commit age 30

Blocks reserved by journal: 0

Fs state field: 0x1:

         some corruptions exist.

sb_version: 2

inode generation number: 0

UUID: 9274c0fe-bb22-4f1f-bfbb-a2e95196eb9d

LABEL:

Set flags in SB:

Is this ok ? (y/n)[n]: y

The fs may still be unconsistent. Run reiserfsck --check.

 

root [/home/tim] # reiserfsck --check /dev/hdd6

reiserfsck 3.6.13 (2003 www.namesys.com)

 

*************************************************************

** If you are using the latest reiserfsprogs and  it fails **

** please  email bug reports to reiserfs-list@namesys.com, **

** providing  as  much  information  as  possible --  your **

** hardware,  kernel,  patches,  settings,  all reiserfsck **

** messages  (including version),  the reiserfsck logfile, **

** check  the  syslog file  for  any  related information. **

** If you would like advice on using this program, support **

** is available  for $25 at  www.namesys.com/support.html. **

*************************************************************

 

Will read-only check consistency of the filesystem on /dev/hdd6

Will put log info to 'stdout'

 

Do you want to run this program?[N/Yes] (note need to type Yes if you do):Yes

###########

reiserfsck --check started at Sat Mar 13 11:03:45 2004

###########

Replaying journal..

```

And it runs endlessly...   :Sad: 

----------

## borh

You could also check for hard disk damage with

```
# badblocks -s /dev/hdd6
```

(you might want to use the -c flag to increase the scanning speed).

----------

## Tim77

It says something like

```
Scanning for defective blocks (read-only-mode): 0 /   9855846
```

And it hangs. Nothing happens, only the cursor blinks...   :Sad: 

----------

## Tim77

```
root [/home/tim] # badblocks -sc /dev/hdd6

badblocks: bad simultaneous block count - /dev/hdd6
```

So what does this mean?

----------

## Tim77

No ideas? Do I really have to reinstall my whole root-partition? Hey boys and girls, this is Linux! No f**ing Windows FAT/NTFS crap. I switched to linux to AVOID these things...  :Wink: 

----------

## nevynxxx

If your getting hands on all the programs trying to access the hard disk, i'd say it's a hardware problem. So the os is not really at fault. Try looking at the hard drive manufacturors website for a tool to low level check the drive. If that says its ok, then try again with the reiser tools, but I'd bet it will say its dead.

----------

