summaryrefslogtreecommitdiffstats
path: root/drivers/md/raid10.c
diff options
context:
space:
mode:
authorShaohua Li2017-05-01 21:15:07 +0200
committerShaohua Li2017-05-01 21:24:10 +0200
commitb506335e5d2b4ec687dde392a3bdbf7601778f1d (patch)
treebfed12edca2ed26bc126adba146a4761479fda0a /drivers/md/raid10.c
parentmd/raid1: Use a new variable to count flighting sync requests (diff)
downloadkernel-qcow2-linux-b506335e5d2b4ec687dde392a3bdbf7601778f1d.tar.gz
kernel-qcow2-linux-b506335e5d2b4ec687dde392a3bdbf7601778f1d.tar.xz
kernel-qcow2-linux-b506335e5d2b4ec687dde392a3bdbf7601778f1d.zip
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>
Diffstat (limited to 'drivers/md/raid10.c')
-rw-r--r--drivers/md/raid10.c2
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)
diff = 0;
if (first || diff < min_offset_diff)
min_offset_diff = diff;
+ first = 0;
}
- first = 0;
}
if (max(before_length, after_length) > min_offset_diff)