diff options
Diffstat (limited to 'fs/ext4/ialloc.c')
-rw-r--r-- | fs/ext4/ialloc.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c index 7b5cfa62b663..00b152b92480 100644 --- a/fs/ext4/ialloc.c +++ b/fs/ext4/ialloc.c | |||
@@ -748,13 +748,10 @@ got: | |||
748 | if (test_opt(sb, EXTENTS)) { | 748 | if (test_opt(sb, EXTENTS)) { |
749 | EXT4_I(inode)->i_flags |= EXT4_EXTENTS_FL; | 749 | EXT4_I(inode)->i_flags |= EXT4_EXTENTS_FL; |
750 | ext4_ext_tree_init(handle, inode); | 750 | ext4_ext_tree_init(handle, inode); |
751 | if (!EXT4_HAS_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_EXTENTS)) { | 751 | err = ext4_update_incompat_feature(handle, sb, |
752 | err = ext4_journal_get_write_access(handle, EXT4_SB(sb)->s_sbh); | 752 | EXT4_FEATURE_INCOMPAT_EXTENTS); |
753 | if (err) goto fail; | 753 | if (err) |
754 | EXT4_SET_INCOMPAT_FEATURE(sb, EXT4_FEATURE_INCOMPAT_EXTENTS); | 754 | goto fail; |
755 | BUFFER_TRACE(EXT4_SB(sb)->s_sbh, "call ext4_journal_dirty_metadata"); | ||
756 | err = ext4_journal_dirty_metadata(handle, EXT4_SB(sb)->s_sbh); | ||
757 | } | ||
758 | } | 755 | } |
759 | 756 | ||
760 | ext4_debug("allocating inode %lu\n", inode->i_ino); | 757 | ext4_debug("allocating inode %lu\n", inode->i_ino); |