btrfs: use btrfs_raid_array for btrfs_get_num_tolerated_disk_barrier_failures()
btrfs_raid_array[] is used to define all raid attributes, use it
to get tolerated_failures in btrfs_get_num_tolerated_disk_barrier_failures(),
instead of complex condition in function.
It can make code simple and auto-support other possible raid-type in
future.
Reviewed-by: David Sterba <dsterba@suse.com>
Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.com>
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index 2a65d2d..7b53390 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -48,6 +48,7 @@
.dev_stripes = 1,
.devs_max = 0, /* 0 == as many as possible */
.devs_min = 4,
+ .tolerated_failures = 1,
.devs_increment = 2,
.ncopies = 2,
},
@@ -56,6 +57,7 @@
.dev_stripes = 1,
.devs_max = 2,
.devs_min = 2,
+ .tolerated_failures = 1,
.devs_increment = 2,
.ncopies = 2,
},
@@ -64,6 +66,7 @@
.dev_stripes = 2,
.devs_max = 1,
.devs_min = 1,
+ .tolerated_failures = 0,
.devs_increment = 1,
.ncopies = 2,
},
@@ -72,6 +75,7 @@
.dev_stripes = 1,
.devs_max = 0,
.devs_min = 2,
+ .tolerated_failures = 0,
.devs_increment = 1,
.ncopies = 1,
},
@@ -80,6 +84,7 @@
.dev_stripes = 1,
.devs_max = 1,
.devs_min = 1,
+ .tolerated_failures = 0,
.devs_increment = 1,
.ncopies = 1,
},
@@ -88,6 +93,7 @@
.dev_stripes = 1,
.devs_max = 0,
.devs_min = 2,
+ .tolerated_failures = 1,
.devs_increment = 1,
.ncopies = 2,
},
@@ -96,6 +102,7 @@
.dev_stripes = 1,
.devs_max = 0,
.devs_min = 3,
+ .tolerated_failures = 2,
.devs_increment = 1,
.ncopies = 3,
},