]> git.ipfire.org Git - thirdparty/mdadm.git/blob - tests/09imsm-create-fail-rebuild
fix examine_brief segfault
[thirdparty/mdadm.git] / tests / 09imsm-create-fail-rebuild
1 # sanity check array creation
2
3 num_disks=2
4 mdadm -CR $container -e imsm -n $num_disks $dev0 $dev1
5 imsm_check container $num_disks
6
7 # RAID0 + RAID1
8 size=10000
9 level=0
10 chunk=64
11 offset=0
12 mdadm -CR $member0 $dev0 $dev1 -n $num_disks -l $level -z $size -c $chunk
13 imsm_check member $member0 $num_disks $level $size $offset $chunk
14 testdev $member0 $num_disks $size $chunk
15
16 offset=$(((size & ~(chunk - 1)) + 2048))
17 size=5000
18 level=1
19 chunk=0
20 mdadm -CR $member1 $dev0 $dev1 -n $num_disks -l $level -z $size
21 imsm_check member $member1 $num_disks $level $size $offset $chunk
22 testdev $member1 1 $size 1
23 check wait
24
25 mdadm -Ss
26
27 # RAID10 + RAID5
28 num_disks=4
29 mdadm -CR $container -e imsm -n $num_disks $dev0 $dev1 $dev2 $dev3
30 imsm_check container $num_disks
31
32 size=10000
33 level=10
34 chunk=64
35 offset=0
36 mdadm -CR $member0 $dev0 $dev1 $dev2 $dev3 -n $num_disks -l $level -z $size -c $chunk
37 imsm_check member $member0 $num_disks $level $size $offset $chunk
38 testdev $member0 $((num_disks-2)) $size $chunk
39
40 offset=$(((size & ~(chunk - 1)) + 2048))
41 size=5000
42 level=5
43 mdadm -CR $member1 $dev0 $dev1 $dev2 $dev3 -n $num_disks -l $level -z $size -c $chunk
44 imsm_check member $member1 $num_disks $level $size $offset $chunk
45 testdev $member1 $((num_disks-1)) $size $chunk
46 check wait
47
48 # FAIL / REBUILD
49 imsm_check_hold $container $dev0
50 mdadm --fail $member0 $dev0
51 mdadm --wait-clean --scan
52 imsm_check_removal $container $dev0
53 mdadm --add $container $dev4
54 check wait
55 imsm_check_hold $container $dev4
56