Skip to contentSkip to conversation

ext2 errors under fsx with 2.5.12-dj1.

PATCH Dave Jones 1 participant 2 messages May 2, 2002 ext2 file system

lore
Share & tools
lore

Dave Jones

author
#0 lore raw

Hi Andreas,
Under a stress test of multiple fsx's, the following messages
appeared..

EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 2553887680, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 67108864, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 1048576, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 1048576, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 16777216, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 16777216, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 2375129740, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 1598358905, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 15730344, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 4125625412, count = 1
EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 16777216, count = 1

My tree has the following patch, which I believe you authored, or were at least involved in..

fs/ext2/balloc.c Sat Mar 23 22:56:32 2002 renamed from fs/ext2/balloc.c Wed May 1 01:08:55 2002 +3 -2
@@ -250,8 +250,9 @@
 
    lock_super (sb);
    es = EXT2_SB(sb)->s_es;
-   if (block < le32_to_cpu(es->s_first_data_block) || 
-       (block + count) > le32_to_cpu(es->s_blocks_count)) {
+   if (block < le32_to_cpu(es->s_first_data_block) ||
+       block + count < block ||
+       block + count > le32_to_cpu(es->s_blocks_count)) {
        ext2_error (sb, "ext2_free_blocks",
                "Freeing blocks not in datazone - "
                "block = %lu, count = %lu", block, count);

Any thoughts ?

Dave.

Signature · 2 lines
| Dave Jones.        http://www.codemonkey.org.uk
| SuSE Labs
author
#1 lore raw
Quoted 2 lines · Dave Jones

EXT2-fs error (device ide0(3,65)): ext2_free_blocks: Freeing blocks not in datazone - block = 2553887680, count = 1

Ugh, I figured out how this was caused, and its somewhat pathological.

What the script should have been doing was two parallel fsx's one on hdb1 and the other on hdb2. Mounted on /mnt/test-hdb1 and /mnt/test-hdb2
Due to a screwup in the script I wrote, both were mounting on /mnt/test

net result: chaos as 1 fsx process had another mount another partition over the top of it.

With the script corrected, it seems to be playing well.

Dave.

Signature · 2 lines
| Dave Jones.        http://www.codemonkey.org.uk
| SuSE Labs