]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
Grow: E2BIG should be reporte differently if --data-offset was requested.
authorNeilBrown <neilb@suse.de>
Tue, 21 May 2013 06:50:05 +0000 (16:50 +1000)
committerNeilBrown <neilb@suse.de>
Wed, 22 May 2013 02:27:35 +0000 (12:27 +1000)
In that case the problem is almost certainly that --data-offset is too big.

Signed-off-by: NeilBrown <neilb@suse.de>
Grow.c

diff --git a/Grow.c b/Grow.c
index 8794f4ecdaf185ae46bf5818af2d96cd298270f4..82f3cc17723b3c7146185421b2a704651ea7a7bf 100644 (file)
--- a/Grow.c
+++ b/Grow.c
@@ -2289,6 +2289,11 @@ static int set_new_data_offset(struct mdinfo *sra, struct supertype *st,
                                  info2.new_data_offset) < 0) {
                        err = errno;
                        err = -1;
+                       if (errno == E2BIG && data_offset != INVALID_SECTORS) {
+                               pr_err("data-offset is too big for %s\n",
+                                      dn);
+                               goto release;
+                       }
                        if (sd == sra->devs &&
                            (errno == ENOENT || errno == E2BIG))
                                /* Early kernel, no 'new_offset' file,