2 # create a simple mirror and check failfast flag works
3 mdadm -CR $md0 -e1.2 --level=raid1 --failfast -n2 $dev0 $dev1
5 if grep -v failfast /sys/block/md0/md/rd*/state > /dev/null
10 # Removing works with the failfast flag
13 if grep -v failfast /sys/block/md0/md/rd1/state > /dev/null
15 die "failfast missing"
18 # Adding works with the failfast flag
19 mdadm $md0 -a --failfast $dev0
21 if grep -v failfast /sys/block/md0/md/rd0/state > /dev/null
23 die "failfast missing"
28 # Assembling works with the failfast flag
29 mdadm -A $md0 $dev0 $dev1
31 if grep -v failfast /sys/block/md0/md/rd*/state > /dev/null
33 die "failfast missing"
36 # Adding works with the nofailfast flag
39 mdadm $md0 -a --nofailfast $dev0
41 if grep failfast /sys/block/md0/md/rd0/state > /dev/null
43 die "failfast should be missing"
46 # Assembling with one faulty slave works with the failfast flag
50 mdadm -A $md0 $dev0 $dev1
54 # Spare works with the failfast flag
55 mdadm -CR $md0 -e1.2 --level=raid1 --failfast -n2 $dev0 $dev1
57 mdadm $md0 -a --failfast $dev2
60 if grep -v failfast /sys/block/md0/md/rd*/state > /dev/null
62 die "failfast missing"
65 # Grow works with the failfast flag
66 mdadm -G $md0 --raid-devices=3
68 if grep -v failfast /sys/block/md0/md/rd*/state > /dev/null
70 die "failfast missing"