summaryrefslogtreecommitdiff
path: root/tests/05r1-re-add
blob: fa6bbcb421e5421f211241f7f36a75d82a0762bd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

#
# create a raid1, remove a drive, and readd it.
# resync should be instant.
# Then do some IO first.  Resync should still be very fast
#

mdadm -CR $md0 -l1 -n2 -binternal --bitmap-chunk=4 -d1 $dev1 $dev2
check resync
check wait
testdev $md0 1 $mdsize1a 64
sleep 4

mdadm $md0 -f $dev2
sleep 1
mdadm $md0 -r $dev2
mdadm $md0 -a $dev2
#cat /proc/mdstat
check nosync

mdadm $md0 -f $dev2
sleep 1
mdadm $md0 -r $dev2
testdev $md0 1 $mdsize1a 64
mdadm $md0 -a $dev2
check wait
blockdev --flushbufs $dev1 $dev2
cmp --ignore-initial=$[64*512] --bytes=$[$mdsize0*1024] $dev1 $dev2

mdadm $md0 -f $dev2; sleep 1
mdadm $md0 -r $dev2
if dd if=/dev/zero of=$md0 ; then : ; fi
blockdev --flushbufs $md0 # ensure writes have been sent.
mdadm $md0 -a $dev2
check recovery
check wait
blockdev --flushbufs $dev1 $dev2
cmp --ignore-initial=$[64*512] --bytes=$[$mdsize0*1024] $dev1 $dev2
mdadm -S $md0