diff options
Diffstat (limited to 'fs/ext4/ialloc.c')
-rw-r--r-- | fs/ext4/ialloc.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c index d48e8b14928c..26154b81b836 100644 --- a/fs/ext4/ialloc.c +++ b/fs/ext4/ialloc.c | |||
@@ -315,7 +315,6 @@ out: | |||
315 | err = ext4_handle_dirty_metadata(handle, NULL, bitmap_bh); | 315 | err = ext4_handle_dirty_metadata(handle, NULL, bitmap_bh); |
316 | if (!fatal) | 316 | if (!fatal) |
317 | fatal = err; | 317 | fatal = err; |
318 | ext4_mark_super_dirty(sb); | ||
319 | } else | 318 | } else |
320 | ext4_error(sb, "bit already cleared for inode %lu", ino); | 319 | ext4_error(sb, "bit already cleared for inode %lu", ino); |
321 | 320 | ||
@@ -830,7 +829,6 @@ got: | |||
830 | percpu_counter_dec(&sbi->s_freeinodes_counter); | 829 | percpu_counter_dec(&sbi->s_freeinodes_counter); |
831 | if (S_ISDIR(mode)) | 830 | if (S_ISDIR(mode)) |
832 | percpu_counter_inc(&sbi->s_dirs_counter); | 831 | percpu_counter_inc(&sbi->s_dirs_counter); |
833 | ext4_mark_super_dirty(sb); | ||
834 | 832 | ||
835 | if (sbi->s_log_groups_per_flex) { | 833 | if (sbi->s_log_groups_per_flex) { |
836 | flex_group = ext4_flex_group(sbi, group); | 834 | flex_group = ext4_flex_group(sbi, group); |
@@ -1054,7 +1052,8 @@ unsigned long ext4_count_free_inodes(struct super_block *sb) | |||
1054 | if (!bitmap_bh) | 1052 | if (!bitmap_bh) |
1055 | continue; | 1053 | continue; |
1056 | 1054 | ||
1057 | x = ext4_count_free(bitmap_bh, EXT4_INODES_PER_GROUP(sb) / 8); | 1055 | x = ext4_count_free(bitmap_bh->b_data, |
1056 | EXT4_INODES_PER_GROUP(sb) / 8); | ||
1058 | printk(KERN_DEBUG "group %lu: stored = %d, counted = %lu\n", | 1057 | printk(KERN_DEBUG "group %lu: stored = %d, counted = %lu\n", |
1059 | (unsigned long) i, ext4_free_inodes_count(sb, gdp), x); | 1058 | (unsigned long) i, ext4_free_inodes_count(sb, gdp), x); |
1060 | bitmap_count += x; | 1059 | bitmap_count += x; |