]> git.ipfire.org Git - thirdparty/mdadm.git/blob - tests/07revert-grow
Free map to avoid resource leak issues
[thirdparty/mdadm.git] / tests / 07revert-grow
1 set -e -x
2
3 # revert a reshape that is increasing the number of devices,
4 # raid5, raid6, and raid10
5
6 # metadate 0.90 cannot handle RAID10 growth
7 # metadata 1.0 doesn't get a default headspace, is don't try it either.
8
9 for metadata in 0.90 1.1 1.2
10 do
11 # RAID5
12 mdadm -CR --assume-clean $md0 -l5 -n4 -x1 $devlist4 --metadata=$metadata
13 check raid5
14 testdev $md0 3 $mdsize1 512
15 mdadm -G $md0 -n 5
16 sleep 3
17 mdadm -S $md0
18 mdadm -A $md0 --update=revert-reshape $devlist4 --backup-file=/tmp/md-backup
19 check wait
20 check raid5
21 testdev $md0 3 $mdsize1 512
22 mdadm -S $md0
23
24 # RAID6
25 mdadm -CR --assume-clean $md0 -l6 -n4 -x1 $devlist4 --metadata=$metadata
26 check raid6
27 testdev $md0 2 $mdsize1 512
28 mdadm -G $md0 -n 5
29 sleep 3
30 mdadm -S $md0
31 mdadm -A $md0 --update=revert-reshape $devlist4 --backup-file=/tmp/md-backup
32 check wait
33 check raid6
34 testdev $md0 2 $mdsize1 512
35 mdadm -S $md0
36
37 if [ $metadata = 0.90 ]; then continue; fi
38
39 # RAID10
40 mdadm -CR --assume-clean $md0 -l10 -n4 -x1 $devlist4 --metadata=$metadata
41 check raid10
42 testdev $md0 2 $mdsize1 512
43 mdadm -G $md0 -n 5
44 sleep 3
45 mdadm -S $md0
46 strace -o /tmp/str ./mdadm -A $md0 --update=revert-reshape $devlist4
47 check wait
48 check raid10
49 testdev $md0 2 $mdsize1 512
50 mdadm -S $md0
51
52 done