This provides the basis for later max_inline enhancement, which needs to
access fs_info->nodesize.

Signed-off-by: Qu Wenruo <w...@suse.com>
---
 fs/btrfs/disk-io.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c
index a8ecccfc36de..f7f985ed5af9 100644
--- a/fs/btrfs/disk-io.c
+++ b/fs/btrfs/disk-io.c
@@ -2644,12 +2644,6 @@ int open_ctree(struct super_block *sb,
         */
        fs_info->compress_type = BTRFS_COMPRESS_ZLIB;
 
-       ret = btrfs_parse_options(fs_info, options, sb->s_flags);
-       if (ret) {
-               err = ret;
-               goto fail_alloc;
-       }
-
        features = btrfs_super_incompat_flags(disk_super) &
                ~BTRFS_FEATURE_INCOMPAT_SUPP;
        if (features) {
@@ -2692,6 +2686,13 @@ int open_ctree(struct super_block *sb,
        fs_info->sectorsize = sectorsize;
        fs_info->stripesize = stripesize;
 
+       /* Only parse options after node/sector size initialized */
+       ret = btrfs_parse_options(fs_info, options, sb->s_flags);
+       if (ret) {
+               err = ret;
+               goto fail_alloc;
+       }
+
        /*
         * mixed block groups end up with duplicate but slightly offset
         * extent buffers for the same range.  It leads to corruptions
-- 
2.16.2

--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to