]> git.ipfire.org Git - thirdparty/mdadm.git/blob - tests/01raid6integ
Provide a mdstat_ent to subarray helper
[thirdparty/mdadm.git] / tests / 01raid6integ
1
2 # Check integrity of raid6 in degraded modes
3 # Create a 5 disk raid6, dump some data to it, then
4 # sh1sum it with different pairs of devices failed
5
6 layouts='ls rs la ra'
7 lv=`uname -r`
8 if expr $lv '>=' 2.6.30 > /dev/null
9 then
10 layouts="$layouts parity-first ddf-zero-restart ddf-N-restart ddf-N-continue \
11 left-asymmetric-6 right-asymmetric-6 left-symmetric-6 right-symmetric-6 parity-first-6"
12 fi
13
14 for layout in $layouts
15 do
16 mdadm -CR $md0 -l6 --layout $layout -n5 $dev0 $dev1 $dev2 $dev3 $dev4
17 check wait
18 tar cf - /etc > $md0
19 sum=`sha1sum $md0`
20
21 totest=
22 for second in $dev0 $dev1 $dev2 $dev3 $dev4
23 do
24 mdadm $md0 -f $second
25 mdadm $md0 -r $second
26 blockdev --flushbufs $md0
27 sum1=`sha1sum $md0`
28 if [ $sum != $sum1 ]
29 then
30 echo $sum does not matc $sum1 with $second missing
31 exit 1
32 fi
33 for first in $totest
34 do
35 mdadm $md0 -f $first
36 mdadm $md0 -r $first
37 blockdev --flushbufs $md0
38 sum1=`sha1sum $md0`
39 if [ $sum != $sum1 ]
40 then
41 echo $sum does not matc $sum1 with $first and $second missing
42 exit 1
43 fi
44 mdadm $md0 -a $first
45 check wait
46 done
47 mdadm $md0 -a $second
48 check wait
49 totest="$totest $second"
50 done
51 mdadm -S $md0
52 done
53