|
@@ -3035,15 +3035,10 @@ retry_root_backup:
|
|
|
btrfs_err(fs_info, "failed to read block groups: %d", ret);
|
|
|
goto fail_sysfs;
|
|
|
}
|
|
|
- fs_info->num_tolerated_disk_barrier_failures =
|
|
|
- btrfs_calc_num_tolerated_disk_barrier_failures(fs_info);
|
|
|
- if (fs_info->fs_devices->missing_devices >
|
|
|
- fs_info->num_tolerated_disk_barrier_failures &&
|
|
|
- !(sb->s_flags & MS_RDONLY)) {
|
|
|
+
|
|
|
+ if (!(sb->s_flags & MS_RDONLY) && !btrfs_check_rw_degradable(fs_info)) {
|
|
|
btrfs_warn(fs_info,
|
|
|
-"missing devices (%llu) exceeds the limit (%d), writeable mount is not allowed",
|
|
|
- fs_info->fs_devices->missing_devices,
|
|
|
- fs_info->num_tolerated_disk_barrier_failures);
|
|
|
+ "writeable mount is not allowed due to too many missing devices");
|
|
|
goto fail_sysfs;
|
|
|
}
|
|
|
|