]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
mdadm: Add description of write journal to md.4
authorSong Liu <songliubraving@fb.com>
Wed, 21 Oct 2015 18:35:15 +0000 (11:35 -0700)
committerNeilBrown <neilb@suse.com>
Thu, 22 Oct 2015 01:19:11 +0000 (12:19 +1100)
Signed-off-by: Song Liu <songliubraving@fb.com>
Signed-off-by: Shaohua Li <shli@fb.com>
Signed-off-by: NeilBrown <neilb@suse.com>
md.4

diff --git a/md.4 b/md.4
index e955c3b4e8b51afcec64b8640d60022e3ce0ca26..f1b88ee6bb03ee462d2a832b4ab760964539a9fe 100644 (file)
--- a/md.4
+++ b/md.4
@@ -874,6 +874,26 @@ The list is particularly useful when recovering to a spare.  If a few blocks
 cannot be read from the other devices, the bulk of the recovery can
 complete and those few bad blocks will be recorded in the bad block list.
 
+.SS RAID456 WRITE JOURNAL
+
+Due to non-atomicity nature of RAID write operations, interruption of
+write operations (system crash, etc.) to RAID456 array can lead to
+inconsistent parity and data loss (so called RAID-5 write hole).
+
+To plug the write hole, from Linux 4.4 (to be confirmed),
+.I md
+supports write ahead journal for RAID456. When the array is created,
+an additional journal device can be added to the array through
+.IR write-journal
+option. The RAID write journal works similar to file system journals.
+Before writing to the data disks, md persists data AND parity of the
+stripe to the journal device. After crashes, md searches the journal
+device for incomplete write operations, and replay them to the data
+disks.
+
+When the journal device fails, the RAID array is forced to run in
+read-only mode.
+
 .SS WRITE-BEHIND
 
 From Linux 2.6.14,