For newly added fallocate types, it should convert inline_data before handling
block swapping.
Reviewed-by: Chao Yu <chao2.yu@samsung.com>
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
        if (offset & (F2FS_BLKSIZE - 1) || len & (F2FS_BLKSIZE - 1))
                return -EINVAL;
 
+       f2fs_balance_fs(F2FS_I_SB(inode));
+
+       if (f2fs_has_inline_data(inode)) {
+               ret = f2fs_convert_inline_inode(inode);
+               if (ret)
+                       return ret;
+       }
+
        pg_start = offset >> PAGE_CACHE_SHIFT;
        pg_end = (offset + len) >> PAGE_CACHE_SHIFT;
 
 
        f2fs_balance_fs(sbi);
 
+       if (f2fs_has_inline_data(inode)) {
+               ret = f2fs_convert_inline_inode(inode);
+               if (ret)
+                       return ret;
+       }
+
        ret = truncate_blocks(inode, i_size_read(inode), true);
        if (ret)
                return ret;