diff -u linux-2.6.13-orig/fs/ext3/balloc.c linux/fs/ext3/balloc.c --- linux-2.6.13-orig/fs/ext3/balloc.c 2005-09-16 11:30:45.000000000 -0300 +++ linux/fs/ext3/balloc.c 2005-09-16 10:57:27.000000000 -0300 @@ -1410,7 +1410,7 @@ unsigned long desc_count; struct ext3_group_desc *gdp; int i; - unsigned long ngroups; + unsigned long ngroups = EXT3_SB(sb)->s_groups_count; #ifdef EXT3FS_DEBUG struct ext3_super_block *es; unsigned long bitmap_count, x; @@ -1421,7 +1421,8 @@ desc_count = 0; bitmap_count = 0; gdp = NULL; - for (i = 0; i < EXT3_SB(sb)->s_groups_count; i++) { + + for (i = 0; i < ngroups; i++) { gdp = ext3_get_group_desc(sb, i, NULL); if (!gdp) continue; @@ -1443,7 +1444,6 @@ return bitmap_count; #else desc_count = 0; - ngroups = EXT3_SB(sb)->s_groups_count; smp_rmb(); for (i = 0; i < ngroups; i++) { gdp = ext3_get_group_desc(sb, i, NULL); diff -u linux-2.6.13-orig/fs/ext3/resize.c linux/fs/ext3/resize.c --- linux-2.6.13-orig/fs/ext3/resize.c 2005-09-16 11:30:45.000000000 -0300 +++ linux/fs/ext3/resize.c 2005-09-16 13:03:30.000000000 -0300 @@ -242,7 +242,7 @@ i < sbi->s_itb_per_group; i++, bit++, block++) { struct buffer_head *it; - ext3_debug("clear inode block %#04x (+%ld)\n", block, bit); + ext3_debug("clear inode block %#04lx (+%d)\n", block, bit); if (IS_ERR(it = bclean(handle, sb, block))) { err = PTR_ERR(it); goto exit_bh; @@ -643,8 +643,8 @@ break; bh = sb_getblk(sb, group * bpg + blk_off); - ext3_debug(sb, __FUNCTION__, "update metadata backup %#04lx\n", - bh->b_blocknr); + ext3_debug("update metadata backup %#04lx\n", + (unsigned long)bh->b_blocknr); if ((err = ext3_journal_get_write_access(handle, bh))) break; lock_buffer(bh);