109d98641SEnji Cooper#!/bin/sh 209d98641SEnji Cooper 309d98641SEnji Cooper. `dirname $0`/conf.sh 409d98641SEnji Cooper 509d98641SEnji Cooperecho "1..4" 609d98641SEnji Cooper 709d98641SEnji Cooperbalance="round-robin" 809d98641SEnji Cooperddbs=2048 909d98641SEnji Coopernblocks1=1024 1009d98641SEnji Coopernblocks2=`expr $nblocks1 / \( $ddbs / 512 \)` 1109d98641SEnji Coopersrc=`mktemp $base.XXXXXX` || exit 1 1209d98641SEnji Cooperdst=`mktemp $base.XXXXXX` || exit 1 1309d98641SEnji Cooper 1409d98641SEnji Cooperdd if=/dev/random of=${src} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 1509d98641SEnji Cooper 16*96950419SGleb Smirnoffattach_md us0 -t malloc -s `expr $nblocks1 + 1` || exit 1 17*96950419SGleb Smirnoffattach_md us1 -t malloc -s `expr $nblocks1 + 1` || exit 1 18*96950419SGleb Smirnoffattach_md us2 -t malloc -s `expr $nblocks1 + 1` || exit 1 1909d98641SEnji Cooper 2009d98641SEnji Coopergmirror label -b $balance $name /dev/${us0} /dev/${us1} /dev/${us2} || exit 1 2109d98641SEnji Cooperdevwait 2209d98641SEnji Cooper 2309d98641SEnji Cooperdd if=${src} of=/dev/mirror/${name} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 2409d98641SEnji Cooper 2509d98641SEnji Cooperdd if=/dev/mirror/${name} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 2609d98641SEnji Cooperif [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 2709d98641SEnji Cooper echo "not ok 1" 2809d98641SEnji Cooperelse 2909d98641SEnji Cooper echo "ok 1" 3009d98641SEnji Cooperfi 3109d98641SEnji Cooperdd if=/dev/${us0} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 3209d98641SEnji Cooperif [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 3309d98641SEnji Cooper echo "not ok 2" 3409d98641SEnji Cooperelse 3509d98641SEnji Cooper echo "ok 2" 3609d98641SEnji Cooperfi 3709d98641SEnji Cooperdd if=/dev/${us1} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 3809d98641SEnji Cooperif [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 3909d98641SEnji Cooper echo "not ok 3" 4009d98641SEnji Cooperelse 4109d98641SEnji Cooper echo "ok 3" 4209d98641SEnji Cooperfi 4309d98641SEnji Cooper 4409d98641SEnji Cooperdd if=/dev/${us2} of=${dst} bs=$ddbs count=$nblocks2 >/dev/null 2>&1 4509d98641SEnji Cooperif [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then 4609d98641SEnji Cooper echo "not ok 4" 4709d98641SEnji Cooperelse 4809d98641SEnji Cooper echo "ok 4" 4909d98641SEnji Cooperfi 5009d98641SEnji Cooper 5109d98641SEnji Cooperrm -f ${src} ${dst} 52