summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Sterba <dsterba@suse.com>2019-05-31 18:22:59 +0300
committerDavid Sterba <dsterba@suse.com>2019-07-02 13:30:49 +0300
commit71a9c4885e1dec0f8ec5e4b05ecd6fddd27fc6c1 (patch)
treed185932e15d315e5cab53943a442c7e0b98d7c5f
parenta07e8a468e6a2f626b61078a4d1e63c181f099eb (diff)
downloadlinux-71a9c4885e1dec0f8ec5e4b05ecd6fddd27fc6c1.tar.xz
btrfs: document BTRFS_MAX_MIRRORS
The real meaning of that constant is not clear from the context due to the target device inclusion. Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r--fs/btrfs/ctree.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/fs/btrfs/ctree.h b/fs/btrfs/ctree.h
index fb7435533478..31198499f175 100644
--- a/fs/btrfs/ctree.h
+++ b/fs/btrfs/ctree.h
@@ -46,7 +46,16 @@ struct btrfs_ref;
#define BTRFS_MAGIC 0x4D5F53665248425FULL /* ascii _BHRfS_M, no null */
-#define BTRFS_MAX_MIRRORS 3
+/*
+ * Maximum number of mirrors that can be available for all profiles counting
+ * the target device of dev-replace as one. During an active device replace
+ * procedure, the target device of the copy operation is a mirror for the
+ * filesystem data as well that can be used to read data in order to repair
+ * read errors on other disks.
+ *
+ * Current value is derived from RAID1 with 2 copies.
+ */
+#define BTRFS_MAX_MIRRORS (2 + 1)
#define BTRFS_MAX_LEVEL 8