From 43e50f50866513144026f2ac1a1c5cc20c7a8428 Mon Sep 17 00:00:00 2001 From: Lukas Czerner Date: Thu, 11 Apr 2013 10:54:46 -0400 Subject: [PATCH] ext4: do not convert to indirect with bigalloc enabled With bigalloc feature enabled we do not support indirect addressing at all so we have to prevent extent addressing to indirect addressing conversion in this case. The problem has been introduced with the commit "ext4: support simple conversion of extent-mapped inodes to use i_blocks" Signed-off-by: Lukas Czerner Signed-off-by: "Theodore Ts'o" --- fs/ext4/migrate.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/fs/ext4/migrate.c b/fs/ext4/migrate.c index d129a4dc16a7..49e8bdff9163 100644 --- a/fs/ext4/migrate.c +++ b/fs/ext4/migrate.c @@ -625,6 +625,10 @@ int ext4_ind_migrate(struct inode *inode) (!ext4_test_inode_flag(inode, EXT4_INODE_EXTENTS))) return -EINVAL; + if (EXT4_HAS_RO_COMPAT_FEATURE(inode->i_sb, + EXT4_FEATURE_RO_COMPAT_BIGALLOC)) + return -EOPNOTSUPP; + handle = ext4_journal_start(inode, EXT4_HT_MIGRATE, 1); if (IS_ERR(handle)) return PTR_ERR(handle); -- 2.30.2