aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md/raid5.h
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2011-12-22 18:17:53 -0500
committerNeilBrown <neilb@suse.de>2011-12-22 18:17:53 -0500
commit977df36255ab0ea78b048cbc9055300c586dcc91 (patch)
tree6d89e08ebe7702ccbb5e160b99ea2440ab08fcda /drivers/md/raid5.h
parent657e3e4d88461a5ab660dd87f8f773f55e748da4 (diff)
md/raid5: writes should get directed to replacement as well as original.
When writing, we need to submit two writes, one to the original, and one to the replacement - if there is a replacement. If the write to the replacement results in a write error, we just fail the device. We only try to record write errors to the original. When writing for recovery, we shouldn't write to the original. This will be addressed in a subsequent patch that generally addresses recovery. Reviewed-by: Dan Williams <dan.j.williams@intel.com> Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/raid5.h')
-rw-r--r--drivers/md/raid5.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/md/raid5.h b/drivers/md/raid5.h
index 4cfd8016010e..f6faaa16a565 100644
--- a/drivers/md/raid5.h
+++ b/drivers/md/raid5.h
@@ -259,6 +259,7 @@ struct stripe_head_state {
259enum r5dev_flags { 259enum r5dev_flags {
260 R5_UPTODATE, /* page contains current data */ 260 R5_UPTODATE, /* page contains current data */
261 R5_LOCKED, /* IO has been submitted on "req" */ 261 R5_LOCKED, /* IO has been submitted on "req" */
262 R5_DOUBLE_LOCKED,/* Cannot clear R5_LOCKED until 2 writes complete */
262 R5_OVERWRITE, /* towrite covers whole page */ 263 R5_OVERWRITE, /* towrite covers whole page */
263/* and some that are internal to handle_stripe */ 264/* and some that are internal to handle_stripe */
264 R5_Insync, /* rdev && rdev->in_sync at start */ 265 R5_Insync, /* rdev && rdev->in_sync at start */