Re: [PATCH RESEND] ext4: Fix kernel BUG at fs/ext4/mballoc.c:910!

2008-02-15 Thread Valerie Clement

Eric Sandeen wrote:

Valerie Clement wrote:

Fix kernel BUG at fs/ext4/mballoc.c:910!

From: Valerie Clement [EMAIL PROTECTED]

With the flex_bg feature enabled, a large file creation oopses the
kernel.


Valerie, what's the specific testcase for this?

Thanks,
-Eric

I just did a simple dd,
 dd if=/dev/zero of=/mnt/test/foo bs=1M count=8k
on an ext4 filesystem with the uninit_groups, lazy_bg and flex_bg
features enabled and the default mount options.

The difficulty is to build e2fsprogs programs that integrate all
these new features together.
   Valerie





-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH RESEND] ext4: Fix kernel BUG at fs/ext4/mballoc.c:910!

2008-02-15 Thread Eric Sandeen
Valerie Clement wrote:
 Eric Sandeen wrote:
 Valerie Clement wrote:
 Fix kernel BUG at fs/ext4/mballoc.c:910!

 From: Valerie Clement [EMAIL PROTECTED]

 With the flex_bg feature enabled, a large file creation oopses the
 kernel.
 Valerie, what's the specific testcase for this?

 Thanks,
 -Eric
 I just did a simple dd,
   dd if=/dev/zero of=/mnt/test/foo bs=1M count=8k
 on an ext4 filesystem with the uninit_groups, lazy_bg and flex_bg
 features enabled and the default mount options.

Ok, thanks Valerie.  It's just always nice to know exactly how to
reproduce a problem that a patch fixes, IMHO.

-Eric
-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH RESEND] ext4: Fix kernel BUG at fs/ext4/mballoc.c:910!

2008-02-14 Thread Andreas Dilger
On Feb 14, 2008  17:35 +0100, Valerie Clement wrote:
 From: Valerie Clement [EMAIL PROTECTED]
 
 With the flex_bg feature enabled, a large file creation oopses the
 kernel.
 The BUG_ON is:
   BUG_ON(len = EXT4_BLOCKS_PER_GROUP(sb));
 
 As the allocation of the bitmaps and the inode table can be done
 outside the block group with flex_bg, this allows to allocate up to
 EXT4_BLOCKS_PER_GROUP blocks in a group.
 Depending on the group size and the block size, extents might be 
 larger than BLOCKS_PER_GROUP(); use EXT_INIT_MAX_LEN instead of 
 BLOCKS_PER_GROUP().

In fact, my earlier review of this patch was incorrect, and Aneesh pointed
out the correct answer.  The ext4_mb_mark_free_simple() function is only
called from ext4_mb_generate_buddy() to generate the buddy bitmap from the
on-disk block bitmap, and in that case the @len parameter should always
be = EXT4_BLOCKS_PER_GROUP().  I think the original patch was correct.

Sorry about the confusion.  I thought at first glance this was for
freeing the blocks from releasing an extent, but that is incorrect.

Cheers, Andreas
--
Andreas Dilger
Sr. Staff Engineer, Lustre Group
Sun Microsystems of Canada, Inc.

-
To unsubscribe from this list: send the line unsubscribe linux-ext4 in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html