On 2 September 2006 13:32, Alex Efros wrote:
> Hi!
>
> So, I did everything correctly to fix it? --rebuild-tree doesn't
> broke anything?

usually not.

but reiserfsck --rebuild-tree is a complex operation. It has a possibility to 
insert wrong blocks into the tree if your fs was used to store another 
reiserfs image. and you have a chance to hit new reiserfsck bug.

> > unfortunately no fix for fsck is available yet.
>
> If you provide fixed reiserfsck version, I can run it on my image to
> test it and confirm image become mountabe after --rebuild-sb. But I
> can't leave this 3GB image on my drive for months, so if you wish

to make the partition mountable again it is enough to change 
one byte in the super block from 0 (hash is not set) to 3 (r5 hash).  
It can be done by a hex editor.

hexdump -C of block #16 (reiserfs uses 4k-size blocks, numbers start with 0):

...
00000030  06 00 01 00 52 65 49 73  45 72 32 46 73 00 00 00  |....ReIsEr2Fs...|
00000040  03 00 00 00 05 00 c6 04  02 00 00 00 89 28 00 00  |......ф.....┴(..|
          ^^ 
          this byte.
...

according with:

struct reiserfs_super_block_v1 {
...
        char s_magic[10];       /* reiserfs magic string indicates that
                                 * file system is reiserfs:
                                 * "ReIsErFs" or "ReIsEr2Fs" or "ReIsEr3Fs" */
        __le16 s_fs_state;      /* it is set to used by fsck to mark which
                                 * phase of rebuilding is done */
        __le32 s_hash_function_code;    /* indicate, what hash function is 
being use
...

> this testing from me - please provide fixed version in about 7-10

> days or at least notify me when it will be ready - if your need more
> time I probably move it to DVD-RW.

I already have a broken fs to experiment with. 

-- 
Alex.

Reply via email to