* grow raid 6: different errors with mdadm 3.0.3 and 3.1
@ 2009-11-24 18:21 Andrew Burgess
2009-11-26 3:22 ` Neil Brown
0 siblings, 1 reply; 4+ messages in thread
From: Andrew Burgess @ 2009-11-24 18:21 UTC (permalink / raw)
To: linux raid mailing list
mdadm 3.0.3:
# mdadm -v /dev/md1 --grow --raid-devices=15
mdadm: Need to backup 19968K of critical section..
mdadm: /dev/md1: failed to save critical region
mdadm 3.1:
sudo ./mdadm -G /dev/md1 --raid-devices=15
mdadm: this change will reduce the size of the array.
use --grow --array-size first to truncate array.
e.g. mdadm --grow /dev/md1 --array-size 928142080
Hmmm. Can I just echo something into /proc to make this happen?
(assuming these are both mdadm bugs)
Or should I try another mdadm? I googled and a problem like #1
occured to someone using 3.0 and they worked around by using
2.6.7. But I'm starting to get nervous that mdadm may really be
trying to stop me from doing something dumb...
New fc12 upgrade, kernel 2.6.31.5-127.fc12.x86_64
Thanks for any help
------------------------------
sudo ./mdadm -D /dev/md1
/dev/md1:
Version : 1.02
Creation Time : Tue Sep 11 13:49:50 2007
Raid Level : raid6
Array Size : 8785916928 (8378.90 GiB 8996.78 GB)
Used Dev Size : 732159744 (698.24 GiB 749.73 GB)
Raid Devices : 14
Total Devices : 15
Persistence : Superblock is persistent
Update Time : Tue Nov 24 10:05:31 2009
State : clean
Active Devices : 14
Working Devices : 15
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 128K
Name : 5
UUID : 5211e02e:19f8718e:8feeb699:03a4879f
Events : 9329236
Number Major Minor RaidDevice State
0 8 17 0 active sync /dev/sdb1
10 8 113 1 active sync /dev/sdh1
2 8 65 2 active sync /dev/sde1
8 8 161 3 active sync /dev/sdk1
4 8 81 4 active sync /dev/sdf1
13 8 129 5 active sync /dev/sdi1
9 8 97 6 active sync /dev/sdg1
11 8 33 7 active sync /dev/sdc1
12 8 177 8 active sync /dev/sdl1
7 8 145 9 active sync /dev/sdj1
15 65 49 10 active sync /dev/sdt1
14 8 49 11 active sync /dev/sdd1
17 9 4 12 active sync /dev/md4
16 9 3 13 active sync /dev/md3
18 65 1 - spare /dev/sdq1
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: grow raid 6: different errors with mdadm 3.0.3 and 3.1
@ 2009-11-24 18:46 Andrew Burgess
0 siblings, 0 replies; 4+ messages in thread
From: Andrew Burgess @ 2009-11-24 18:46 UTC (permalink / raw)
To: linux raid mailing list
On 11/24/2009 10:21:39 AM, Andrew Burgess wrote:
> mdadm 3.1:
oops, it seems to be 3.1.1 not 3.1
from
http://neil.brown.name/git?p=mdadm;a=snapshot;h=40bc78f5cd292d90917cb0a8c177498a516494c3;sf=tgz
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: grow raid 6: different errors with mdadm 3.0.3 and 3.1
2009-11-24 18:21 grow raid 6: different errors with mdadm 3.0.3 and 3.1 Andrew Burgess
@ 2009-11-26 3:22 ` Neil Brown
2009-11-26 15:02 ` Andrew Burgess
0 siblings, 1 reply; 4+ messages in thread
From: Neil Brown @ 2009-11-26 3:22 UTC (permalink / raw)
To: Andrew Burgess; +Cc: linux raid mailing list
On Tue, 24 Nov 2009 10:21:39 -0800
Andrew Burgess <aab@cichlid.com> wrote:
>
> mdadm 3.0.3:
>
> # mdadm -v /dev/md1 --grow --raid-devices=15
> mdadm: Need to backup 19968K of critical section..
> mdadm: /dev/md1: failed to save critical region
>
> mdadm 3.1:
>
> sudo ./mdadm -G /dev/md1 --raid-devices=15
> mdadm: this change will reduce the size of the array.
> use --grow --array-size first to truncate array.
> e.g. mdadm --grow /dev/md1 --array-size 928142080
>
> Hmmm. Can I just echo something into /proc to make this happen?
> (assuming these are both mdadm bugs)
>
> Or should I try another mdadm? I googled and a problem like #1
> occured to someone using 3.0 and they worked around by using
> 2.6.7. But I'm starting to get nervous that mdadm may really be
> trying to stop me from doing something dumb...
Thanks for the report.
There appears to be a big in mdadm-3.1.1 such that the new
array size gets truncated to 32bits in this calculation so
it looks like it is getting smaller.
The following patch will fix it, and can also be collected
from my git tree (git://neil.brown.name/md).
Thanks,
NeilBrown
From 2ed4f75388f99968be58097941a9704f6e42d701 Mon Sep 17 00:00:00 2001
From: NeilBrown <neilb@suse.de>
Date: Thu, 26 Nov 2009 14:19:26 +1100
Subject: [PATCH] Grow: avoid truncation error when checking size of array.
array.size is only 32bit so it is not safe to multiply it
up before casting to (long long).
Actually, we shouldn't be using array.size here at all, but that
will get fixed in a subsequent patch.
Reported-by: Andrew Burgess <aab@cichlid.com>
Signed-off-by: NeilBrown <neilb@suse.de>
---
Grow.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/Grow.c b/Grow.c
index 7764bdb..a654d4e 100644
--- a/Grow.c
+++ b/Grow.c
@@ -891,7 +891,7 @@ int Grow_reshape(char *devname, int fd, int quiet, char *backup_file,
}
/* Check that we can hold all the data */
- size = ndata * array.size;
+ size = ndata * (long long)array.size;
get_dev_size(fd, NULL, &array_size);
if (size < (array_size/1024)) {
fprintf(stderr, Name ": this change will reduce the size of the array.\n"
--
1.6.4.3
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: grow raid 6: different errors with mdadm 3.0.3 and 3.1
2009-11-26 3:22 ` Neil Brown
@ 2009-11-26 15:02 ` Andrew Burgess
0 siblings, 0 replies; 4+ messages in thread
From: Andrew Burgess @ 2009-11-26 15:02 UTC (permalink / raw)
To: linux raid mailing list
On 11/25/2009 07:22:27 PM, Neil Brown wrote:
> On Tue, 24 Nov 2009 10:21:39 -0800 Andrew Burgess <aab@cichlid.com>
> wrote:
> > mdadm 3.1:
> >
> > sudo ./mdadm -G /dev/md1 --raid-devices=15
> > mdadm: this change will reduce the size of the array.
> > use --grow --array-size first to truncate array.
> > e.g. mdadm --grow /dev/md1 --array-size 928142080
> Thanks for the report.
Thanks for the fix. I grabbed the git head version and the
resize is grinding away now.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2009-11-26 15:02 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-24 18:21 grow raid 6: different errors with mdadm 3.0.3 and 3.1 Andrew Burgess
2009-11-26 3:22 ` Neil Brown
2009-11-26 15:02 ` Andrew Burgess
-- strict thread matches above, loose matches on Subject: below --
2009-11-24 18:46 Andrew Burgess
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).