Merge tag 'libnvdimm-for-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdim...
[linux-2.6-microblaze.git] / fs / btrfs / disk-io.c
index a59ab7b..2f9515d 100644 (file)
@@ -3392,11 +3392,16 @@ int __cold open_ctree(struct super_block *sb, struct btrfs_fs_devices *fs_device
                goto fail_alloc;
        }
 
-       /* For 4K sector size support, it's only read-only */
-       if (PAGE_SIZE == SZ_64K && sectorsize == SZ_4K) {
-               if (!sb_rdonly(sb) || btrfs_super_log_root(disk_super)) {
+       if (sectorsize != PAGE_SIZE) {
+               btrfs_warn(fs_info,
+               "read-write for sector size %u with page size %lu is experimental",
+                          sectorsize, PAGE_SIZE);
+       }
+       if (sectorsize != PAGE_SIZE) {
+               if (btrfs_super_incompat_flags(fs_info->super_copy) &
+                       BTRFS_FEATURE_INCOMPAT_RAID56) {
                        btrfs_err(fs_info,
-       "subpage sectorsize %u only supported read-only for page size %lu",
+               "RAID56 is not yet supported for sector size %u with page size %lu",
                                sectorsize, PAGE_SIZE);
                        err = -EINVAL;
                        goto fail_alloc;