diff --git a/tools/regression/geom_nop/Makefile b/tools/regression/geom_nop/Makefile new file mode 100644 index 000000000000..6cd8fbd3e033 --- /dev/null +++ b/tools/regression/geom_nop/Makefile @@ -0,0 +1,8 @@ +# +# $FreeBSD$ +# +# Regression test for geom_nop. +# + +test: + @sh runtests.sh diff --git a/tools/regression/geom_nop/runtests.sh b/tools/regression/geom_nop/runtests.sh new file mode 100644 index 000000000000..38089c5daedf --- /dev/null +++ b/tools/regression/geom_nop/runtests.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# $FreeBSD$ + +dir=`dirname $0` + +for ts in `dirname $0`/test-*.sh; do + sh $ts +done diff --git a/tools/regression/geom_nop/test-1.sh b/tools/regression/geom_nop/test-1.sh new file mode 100644 index 000000000000..07e083573b89 --- /dev/null +++ b/tools/regression/geom_nop/test-1.sh @@ -0,0 +1,23 @@ +#!/bin/sh +# $FreeBSD$ + +name="test" +base=`basename $0` +us=45 + +mdconfig -a -t malloc -s 1M -u $us || exit 1 + +gnop create /dev/md${us} || exit 1 + +# Size of created device should be 1MB. + +size=`diskinfo /dev/md${us}.nop | awk '{print $3}'` + +if [ $size -eq 1048576 ]; then + echo "PASS" +else + echo "FAIL" +fi + +gnop destroy md${us}.nop +mdconfig -d -u $us diff --git a/tools/regression/geom_nop/test-2.sh b/tools/regression/geom_nop/test-2.sh new file mode 100644 index 000000000000..0bc31f659d9c --- /dev/null +++ b/tools/regression/geom_nop/test-2.sh @@ -0,0 +1,27 @@ +#!/bin/sh +# $FreeBSD$ + +name="test" +base=`basename $0` +us=45 +src=`mktemp /tmp/$base.XXXXXX` || exit 1 +dst=`mktemp /tmp/$base.XXXXXX` || exit 1 + +dd if=/dev/random of=${src} bs=1m count=1 >/dev/null 2>&1 + +mdconfig -a -t malloc -s 1M -u $us || exit 1 + +gnop create /dev/md${us} || exit 1 + +dd if=${src} of=/dev/md${us}.nop bs=1m count=1 >/dev/null 2>&1 +dd if=/dev/md${us}.nop of=${dst} bs=1m count=1 >/dev/null 2>&1 + +if [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then + echo "FAIL" +else + echo "PASS" +fi + +gnop destroy md${us}.nop +mdconfig -d -u $us +rm -f ${src} ${dst} diff --git a/tools/regression/geom_stripe/Makefile b/tools/regression/geom_stripe/Makefile new file mode 100644 index 000000000000..de8d14baad90 --- /dev/null +++ b/tools/regression/geom_stripe/Makefile @@ -0,0 +1,8 @@ +# +# $FreeBSD$ +# +# Regression test for geom_stripe. +# + +test: + @sh runtests.sh diff --git a/tools/regression/geom_stripe/runtests.sh b/tools/regression/geom_stripe/runtests.sh new file mode 100644 index 000000000000..38089c5daedf --- /dev/null +++ b/tools/regression/geom_stripe/runtests.sh @@ -0,0 +1,8 @@ +#!/bin/sh +# $FreeBSD$ + +dir=`dirname $0` + +for ts in `dirname $0`/test-*.sh; do + sh $ts +done diff --git a/tools/regression/geom_stripe/test-1.sh b/tools/regression/geom_stripe/test-1.sh new file mode 100644 index 000000000000..c8d59ae5097a --- /dev/null +++ b/tools/regression/geom_stripe/test-1.sh @@ -0,0 +1,27 @@ +#!/bin/sh +# $FreeBSD$ + +name="test" +base=`basename $0` +us=45 + +mdconfig -a -t malloc -s 1M -u $us || exit 1 +mdconfig -a -t malloc -s 2M -u `expr $us + 1` || exit 1 +mdconfig -a -t malloc -s 3M -u `expr $us + 2` || exit 1 + +gstripe create -s 16384 $name /dev/md${us} /dev/md`expr $us + 1` /dev/md`expr $us + 2` || exit 1 + +# Size of created device should be 1MB * 3. + +size=`diskinfo /dev/${name}.stripe | awk '{print $3}'` + +if [ $size -eq 3145728 ]; then + echo "PASS" +else + echo "FAIL" +fi + +gstripe destroy $name +mdconfig -d -u $us +mdconfig -d -u `expr $us + 1` +mdconfig -d -u `expr $us + 2` diff --git a/tools/regression/geom_stripe/test-2.sh b/tools/regression/geom_stripe/test-2.sh new file mode 100644 index 000000000000..17c883419870 --- /dev/null +++ b/tools/regression/geom_stripe/test-2.sh @@ -0,0 +1,32 @@ +#!/bin/sh +# $FreeBSD$ + +name="test" +base=`basename $0` +us=45 +tsize=3 +src=`mktemp /tmp/$base.XXXXXX` || exit 1 +dst=`mktemp /tmp/$base.XXXXXX` || exit 1 + +dd if=/dev/random of=${src} bs=1m count=$tsize >/dev/null 2>&1 + +mdconfig -a -t malloc -s 1M -u $us || exit 1 +mdconfig -a -t malloc -s 2M -u `expr $us + 1` || exit 1 +mdconfig -a -t malloc -s 3M -u `expr $us + 2` || exit 1 + +gstripe create -s 8192 $name /dev/md${us} /dev/md`expr $us + 1` /dev/md`expr $us + 2` || exit 1 + +dd if=${src} of=/dev/${name}.stripe bs=1m count=$tsize >/dev/null 2>&1 +dd if=/dev/${name}.stripe of=${dst} bs=1m count=$tsize >/dev/null 2>&1 + +if [ `md5 -q ${src}` != `md5 -q ${dst}` ]; then + echo "FAIL" +else + echo "PASS" +fi + +gstripe destroy $name +mdconfig -d -u $us +mdconfig -d -u `expr $us + 1` +mdconfig -d -u `expr $us + 2` +rm -f ${src} ${dst}