summaryrefslogtreecommitdiffstats
path: root/tests/05r1-grow-external
blob: 5954833b957706daab275a79478eb02af18ada4e (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
set -e

#
# create a raid1 array, add an external bitmap
#
$mdadm --create --run $md0 -l 1 -n 2 $dev1 $dev2
$check wait
sh tests/testdev $md0 1 $mdsize0 1

bmf=$targetdir/bm
rm -f $bmf
$mdadm -E $dev1
$mdadm --grow $md0 --bitmap=$bmf --delay=1 || { $mdadm -X $bmf ; exit 1; }
dirty1=`$mdadm -X $bmf | sed -n -e 's/.*Bitmap.* \([0-9]*\) dirty.*/\1/p'`
sleep 4
dirty2=`$mdadm -X $bmf | sed -n -e 's/.*Bitmap.* \([0-9]*\) dirty.*/\1/p'`

sh tests/testdev $md0 1 $mdsize0 1
dirty3=`$mdadm -X $bmf | sed -n -e 's/.*Bitmap.* \([0-9]*\) dirty.*/\1/p'`
sleep 4
dirty4=`$mdadm -X $bmf | sed -n -e 's/.*Bitmap.* \([0-9]*\) dirty.*/\1/p'`

echo $dirty1 $dirty2 $dirty3 $dirty4
if [ $dirty2 -ne 0 -o $dirty4 -ne 0 -o $dirty3 -lt 400 ]
then 
   echo bad dirty counts
   exit 1
fi
$mdadm -S $md0