summaryrefslogtreecommitdiffstats
path: root/include/linux/raid
diff options
context:
space:
mode:
authorNeilBrown <neilb@cse.unsw.edu.au>2005-06-21 17:17:25 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-21 19:07:46 -0700
commit41158c7eb22312cfaa256744e1553bb4042ff085 (patch)
tree21c28e0630d66fc32d758993299a78088a846562 /include/linux/raid
parent289e99e8ed8f36e386bf7de49947311c17ae1482 (diff)
downloadop-kernel-dev-41158c7eb22312cfaa256744e1553bb4042ff085.zip
op-kernel-dev-41158c7eb22312cfaa256744e1553bb4042ff085.tar.gz
[PATCH] md: optimise reconstruction when re-adding a recently failed drive.
When an array is degraded, bit in the intent-bitmap are never cleared. So if a recently failed drive is re-added, we only need to reconstruct the block that are still reflected in the bitmap. This patch adds support for this re-adding. Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/raid')
-rw-r--r--include/linux/raid/md_k.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h
index 16e94a9..6cdcb44 100644
--- a/include/linux/raid/md_k.h
+++ b/include/linux/raid/md_k.h
@@ -183,6 +183,10 @@ struct mdk_rdev_s
int desc_nr; /* descriptor index in the superblock */
int raid_disk; /* role of device in array */
+ int saved_raid_disk; /* role that device used to have in the
+ * array and could again if we did a partial
+ * resync from the bitmap
+ */
atomic_t nr_pending; /* number of pending requests.
* only maintained for arrays that
OpenPOWER on IntegriCloud