--- /dev/null
+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