(no commit message)
authorahoka <ahoka@web>
Thu, 19 May 2011 13:22:57 +0000 (06:22 -0700)
committerCharlie <root@leaf.dragonflybsd.org>
Thu, 19 May 2011 13:22:57 +0000 (06:22 -0700)
docs/developer/dmmirror/index.mdwn

index 653e4d1..6ca2b18 100644 (file)
@@ -36,15 +36,16 @@ volume was out of sync (for faster recovery).
 [[header: WIBM][size][primary/secondary][serial][crc32]]
 
 ##Reading the bitmap
-read two pages
-check crc
-    if any crc is invalid -> use the other (TODO, what if serial is different?)
-    if both crc is invalid -> trouble! full resync
-    both valid -> continue
-
-check serial
-    if one of the copies is outdated, use the other
-    if match we have a valid bitmap
+- read both bitmaps
+- validate signature (TODO Maybe only on first read?)
+- check crc
+    - if any crc is invalid -> use the other (TODO, what if serial is different?)
+    - if both crc is invalid -> trouble! full resync
+    - if both valid: continue
+
+-check serial
+   - if one of the copies is outdated, use the other
+   - if match we have a valid bitmap
 
 ##Writing the bitmap
 - modify bitmap in memory (bump serial, 1 if overflow)