From: Neil Brown Date: Mon, 20 Aug 2007 04:14:42 +0000 (+1000) Subject: Report error when grow cannot be restarted. X-Git-Tag: mdadm-2.6.3~2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2295250a7387d28975061a936b60d0d22f8e4c0e;p=thirdparty%2Fmdadm.git Report error when grow cannot be restarted. Make sure that if --assemble find an array in the critical region of a reshape, and cannot find the critical data to restart the reshape, it gives an error message. --- diff --git a/ChangeLog b/ChangeLog index 6a525f0d..4ae4dade 100644 --- a/ChangeLog +++ b/ChangeLog @@ -5,6 +5,9 @@ Changes Prior to this release 1.x array was created with older mdadm). - When adding a drive that was a little too small, we did not get the correct error message. + - Make sure that if --assemble find an array in the critical region + of a reshape, and cannot find the critical data to restart the + reshape, it gives an error message. Changes Prior to 2.6.2 release - --fail detached and --remove faulty can be used to fail and diff --git a/Grow.c b/Grow.c index 52907fa0..825747e7 100644 --- a/Grow.c +++ b/Grow.c @@ -867,7 +867,6 @@ int Grow_restart(struct supertype *st, struct mdinfo *info, int *fdlist, int cnt { int i, j; int old_disks; - int err = 0; unsigned long long *offsets; if (info->delta_disks < 0) @@ -960,7 +959,7 @@ int Grow_restart(struct supertype *st, struct mdinfo *info, int *fdlist, int cnt fd, __le64_to_cpu(bsb.devstart)*512, 0, __le64_to_cpu(bsb.length)*512)) { /* didn't succeed, so giveup */ - return -1; + return 1; } /* Ok, so the data is restored. Let's update those superblocks. */ @@ -979,5 +978,5 @@ int Grow_restart(struct supertype *st, struct mdinfo *info, int *fdlist, int cnt /* And we are done! */ return 0; } - return err; + return 1; }