Hi Vladimir,

My setup : 4x 12 disks x72Go RAID 5 on a RAID PERC3/QC
           Partition size is about 1.7 To

mkreiserfs segfaults when i try to make the partition. I can reproduce it
every time.

Here is the gdb trace:

(gdb) set args --hash r5 --format 3.6 /dev/sdd1 
(gdb) run
Starting program:
/usr/src/reiserfsprogs-3.x.0k-pre13/mkreiserfs/./mkreiserfs --hash r5
--format 3.6 /dev/sdd1

<-------------mkreiserfs, 2001------------->
reiserfsprogs 3.x.0k-pre13

Format 3.6 with standard journal
Count of blocks on the device: 4187425469
Number of blocks consumed by mkreiserfs formatting process: 70466
Blocksize: 4096
Hash function used to sort names: "r5"
Journal Size 8193 blocks
Journal Max transaction length 1024
ATTENTION: YOU SHOULD REBOOT AFTER FDISK!
        ALL DATA WILL BE LOST ON '/dev/sdd1'!
Continue (y/n):y
Initializing journal - 0%....20%....40%....60%....80%....100%

Program received signal SIGSEGV, Segmentation fault.
find_buffer (dev=7, block=-107541828, size=4096) at io.c:274
274             next = tmp->b_hash_next;
(gdb) bt
#0  find_buffer (dev=7, block=-107541828, size=4096) at io.c:274
#1  0x0804ab01 in getblk (dev=7, block=-107541828, size=4096) at io.c:350
#2  0x0804acc6 in bread (dev=7, block=4187425468, size=4096) at io.c:439
#3  0x0805e17c in reiserfs_flush_to_ondisk_bitmap (bm=0x806c0a0,
fs=0x806bfb8) at bitmap.c:276#4  0x0805ea17 in
reiserfs_close_ondisk_bitmap (fs=0x806bfb8) at bitmap.c:667#5  0x0805c344
in reiserfs_close (fs=0x806bfb8) at reiserfslib.c:357#6  0x0804a4d6 in
main (argc=6, argv=0xbffff6b4) at mkreiserfs.c:685#7  0x4003565f in
__libc_start_main () from /lib/libc.so.6(gdb) 

full backtrace:

(gdb) bt full
#0  find_buffer (dev=7, block=-107541828, size=4096) at io.c:274
        dev = 7
        block = -107541828
        size = 4096
        next = (struct buffer_head *) 0x20736e61
#1  0x0804ab01 in getblk (dev=7, block=-107541828, size=4096) at io.c:350
        dev = 7
        size = 4096
        bh = (struct buffer_head *) 0xbffff7f6
#2  0x0804acc6 in bread (dev=7, block=4187425468, size=4096) at io.c:439
        block = 4187425468
        bh = (struct buffer_head *) 0xf9970abc
#3  0x0805e17c in reiserfs_flush_to_ondisk_bitmap (bm=0x806c0a0,
fs=0x806bfb8) at bitmap.c:276        to_copy = 0
        copied = 0
        i = 0
        p = 0x8 <Address 0x8 out of bounds>
        last_byte_unused_bits = 134660024
        block = 134609447
        bh = (struct buffer_head *) 0xbffff5ac
#4  0x0805ea17 in reiserfs_close_ondisk_bitmap (fs=0x806bfb8) at
bitmap.c:667        fs = (reiserfs_filsys_t *) 0x806bfb8
#5  0x0805c344 in reiserfs_close (fs=0x806bfb8) at reiserfslib.c:357
        fs = (reiserfs_filsys_t *) 0x806bfb8
#6  0x0804a4d6 in main (argc=6, argv=0xbffff6b4) at mkreiserfs.c:685
        fs = (reiserfs_filsys_t *) 0x806bfb8
        force = 0
        device_name = 0xbffff7f6 "/dev/sdd1"
        jdevice_name = 0x0
        fs_size = 4187425469
        c = -1348
        flag = 0
#7  0x4003565f in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
(gdb) 


The fact is that it dosn't happen with 3.x.0j:

root@bigass:/usr/src/reiserfsprogs-3.x.0j/mkreiserfs# date; ./mkreiserfs
-h r5 -v 2 /dev/sdd1; date Fri Dec 14 03:47:16 CET 2001

<-------------mkreiserfs, 2001------------->
reiserfsprogs 3.x.0j

===================================================================
LEAF NODE (8211) contains level=1, nr_items=2, free_space=3932 rdkey
-------------------------------------------------------------------------
------|###|type|ilen|f/sp| loc|fmt|fsck|                   key            
         ||   |    |    |e/cn|    |   |need|                              
            
|------------------------------------------------------------------------
-------|  0|1 2 0x0 SD, len 44, entry count 0, fsck need 0, format new|
(NEW SD), mode drwxr-xr-x, size 48, nlink 2, mtime 12/14/2001 03:47:16
blocks
8------------------------------------------------------------------------
-------|  1|1 2 0x1 DIR, len 48, entry count 2, fsck need 0, format old|
###: Name                     length    Object key           Hash     Gen
number  0: ".                        "(  1)                 1 2          
0    1, loc 40, state 4 ??  1: "..                       "(  2)           
     0 1           0    2, loc 32, state 4
??===================================================================
Creating reiserfs of 3.6 format Block size 4096 bytes
Block count 429329084
Used blocks 21314
Free blocks count 429307770
First 16 blocks skipped
Super block is in 16
Bitmap blocks (13103) are : 
        17, 32768, 65536, 98304, 131072,..........lots of numbers here....
428933120, 428965888, 428998656, 429031424, 429064192, 429096960,
429129728, 429162496, 429195264, 429228032, 429260800, 429293568,
429326336 Journal size 8192 (blocks 18-8210 of file /dev/sdd1)
Root block 8211
Hash function "r5"
ATTENTION: YOU SHOULD REBOOT AFTER FDISK!
(y/n)       ALL DATA WILL BE LOST ON '/dev/sdd1'! y
Initializing journal - 0%....20%....40%....60%....80%....100%             
           left 0, 585 /sec Syncing..


BTW, it takes 5 minutes for the first mount ! :o)

# df -k

Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/sda1               995960    344136    651824  35% /
/dev/sda3              4883604    340400   4543204   7% /usr
/dev/sda5               995960     32840    963120   4% /tmp
/dev/sda6              1951800     88384   1863416   5% /var
/dev/sda7              7951892    552800   7399092   7% /home
/dev/sdd1            1717263920     32840 1717231080   1% /storage

I re-did the test with a 500Go volume and this time mkreiserfs
3.x.0k-pre13 didn't segfault.

This is a test server so i can test all software/kernel versions you would
like to see me run.

Thanks,

Philippe.



Reply via email to