1#!/bin/sh
| 1#!/bin/sh
|
2# $FreeBSD: head/tools/regression/geom_mirror/test-6.t 153182 2005-12-07 00:34:27Z pjd $
| 2# $FreeBSD: head/tools/regression/geom_mirror/test-6.t 153186 2005-12-07 01:27:23Z pjd $
|
3
| 3
|
4name="test" 5base=`basename $0`
| 4. `dirname $0`/conf.sh 5 6echo "1..2" 7
|
6balance="split" 7us0=45 8us1=`expr $us0 + 1` 9us2=`expr $us0 + 2` 10ddbs=8192 11nblocks1=1024 12nblocks2=`expr $nblocks1 / \( $ddbs / 512 \)` 13src=`mktemp /tmp/$base.XXXXXX` || exit 1 14dst=`mktemp /tmp/$base.XXXXXX` || exit 1 15
| 8balance="split" 9us0=45 10us1=`expr $us0 + 1` 11us2=`expr $us0 + 2` 12ddbs=8192 13nblocks1=1024 14nblocks2=`expr $nblocks1 / \( $ddbs / 512 \)` 15src=`mktemp /tmp/$base.XXXXXX` || exit 1 16dst=`mktemp /tmp/$base.XXXXXX` || exit 1 17
|
16echo "1..2" 17
| |
18dd if=/dev/random of=${src} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 19 20mdconfig -a -t malloc -s `expr $nblocks1 + 1` -u $us0 || exit 1 21mdconfig -a -t malloc -s `expr $nblocks1 + 1` -u $us1 || exit 1 22mdconfig -a -t malloc -s `expr $nblocks1 + 1` -u $us2 || exit 1 23
| 18dd if=/dev/random of=${src} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 19 20mdconfig -a -t malloc -s `expr $nblocks1 + 1` -u $us0 || exit 1 21mdconfig -a -t malloc -s `expr $nblocks1 + 1` -u $us1 || exit 1 22mdconfig -a -t malloc -s `expr $nblocks1 + 1` -u $us2 || exit 1 23
|
24kldstat -q -m g_mirror || gmirror load || exit 1 25
| |
26gmirror label -b $balance -s `expr $ddbs / 2` $name /dev/md${us0} /dev/md${us1} || exit 1
| 24gmirror label -b $balance -s `expr $ddbs / 2` $name /dev/md${us0} /dev/md${us1} || exit 1
|
27sleep 1
| 25devwait
|
28 29dd if=${src} of=/dev/mirror/${name} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 30dd if=/dev/zero of=/dev/md${us2} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 31 32dd if=/dev/mirror/${name} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 33if [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 34 echo "not ok 1" 35else 36 echo "ok 1" 37fi 38 39# Connect disk to the mirror. 40gmirror insert ${name} md${us2} 41# Wait for synchronization. 42sleep 1 43dd if=/dev/md${us2} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 44if [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 45 echo "not ok 2" 46else 47 echo "ok 2" 48fi 49 50gmirror remove $name md${us0} md${us1} md${us2} 51mdconfig -d -u $us0 52mdconfig -d -u $us1 53mdconfig -d -u $us2 54rm -f ${src} ${dst}
| 26 27dd if=${src} of=/dev/mirror/${name} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 28dd if=/dev/zero of=/dev/md${us2} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 29 30dd if=/dev/mirror/${name} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 31if [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 32 echo "not ok 1" 33else 34 echo "ok 1" 35fi 36 37# Connect disk to the mirror. 38gmirror insert ${name} md${us2} 39# Wait for synchronization. 40sleep 1 41dd if=/dev/md${us2} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 42if [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 43 echo "not ok 2" 44else 45 echo "ok 2" 46fi 47 48gmirror remove $name md${us0} md${us1} md${us2} 49mdconfig -d -u $us0 50mdconfig -d -u $us1 51mdconfig -d -u $us2 52rm -f ${src} ${dst}
|