]> git.ipfire.org Git - thirdparty/mdadm.git/blame - tests/04update-metadata
tests, imsm: Test shouldn't call grow with chunk and level in one command
[thirdparty/mdadm.git] / tests / 04update-metadata
CommitLineData
ccec2685
N
1set -xe
2
3# test converting v0.90 to v1.0
4# check for different levels
5# check it fails for non-v0.90
6# check it fails during reshape or recovery
7# check it fails when bitmap is present
8
9dlist="$dev0 $dev1 $dev2 $dev3"
10
11for ls in raid0/4 linear/4 raid1/1 raid5/3 raid6/2
12do
13 s=${ls#*/} l=${ls%/*}
14 mdadm -CR --assume-clean -e 0.90 $md0 --level $l -n 4 -c 64 $dlist
15 testdev $md0 $s 19904 64
16 mdadm -S $md0
17 mdadm -A $md0 --update=metadata $dlist
18 testdev $md0 $s 19904 64 check
19 mdadm -S $md0
20done
21
22if mdadm -A $md0 --update=metadata $dlist
23then echo >&2 should fail with v1.0 metadata
24 exit 1
25fi
26
27mdadm -CR -e 0.90 $md0 --level=6 -n4 -c32 $dlist
28mdadm -S $md0
29
30if mdadm -A $md0 --update=metadata $dlist
31then echo >&2 should fail during resync
32 exit 1
33fi
34mdadm -A $md0 $dlist
3c899cab 35mdadm --wait $md0 || true
ccec2685
N
36mdadm -S $md0
37
38# should succeed now
39mdadm -A $md0 --update=metadata $dlist
40
41mdadm -S /dev/md0
42mdadm -CR --assume-clean -e 0.90 $md0 --level=6 -n4 -c32 $dlist --bitmap=internal
43mdadm -S $md0
44
45if mdadm -A $md0 --update=metadata $dlist
46then echo >&2 should fail when bitmap present
47 exit 1
48fi