diff options
author | Shaohua Li <shli@fb.com> | 2017-05-01 15:15:07 -0400 |
---|---|---|
committer | Shaohua Li <shli@fb.com> | 2017-05-01 15:24:10 -0400 |
commit | b506335e5d2b4ec687dde392a3bdbf7601778f1d (patch) | |
tree | bfed12edca2ed26bc126adba146a4761479fda0a | |
parent | 43ac9b84a399bc10210a2d9f4e0778b7c6059c07 (diff) |
md/raid10: skip spare disk as 'first' disk
Commit 6f287ca(md/raid10: reset the 'first' at the end of loop) ignores
a case in reshape, the first rdev could be a spare disk, which shouldn't
be accounted as the first disk since it doesn't include the offset info.
Fix: 6f287ca(md/raid10: reset the 'first' at the end of loop)
Cc: Guoqing Jiang <gqjiang@suse.com>
Cc: NeilBrown <neilb@suse.com>
Signed-off-by: Shaohua Li <shli@fb.com>
-rw-r--r-- | drivers/md/raid10.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index 2883b720a265..cce23be9cc93 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c | |||
@@ -4079,8 +4079,8 @@ static int raid10_start_reshape(struct mddev *mddev) | |||
4079 | diff = 0; | 4079 | diff = 0; |
4080 | if (first || diff < min_offset_diff) | 4080 | if (first || diff < min_offset_diff) |
4081 | min_offset_diff = diff; | 4081 | min_offset_diff = diff; |
4082 | first = 0; | ||
4082 | } | 4083 | } |
4083 | first = 0; | ||
4084 | } | 4084 | } |
4085 | 4085 | ||
4086 | if (max(before_length, after_length) > min_offset_diff) | 4086 | if (max(before_length, after_length) > min_offset_diff) |