Module Name: src Committed By: oster Date: Fri Jul 29 19:57:38 UTC 2011
Modified Files: src/tests/dev/raidframe: t_raid.sh Log Message: Note that PR kern/44251 is fixed. Add tests for normal configuration of RAID 1 and RAID 5 sets. To generate a diff of this commit: cvs rdiff -u -r1.8 -r1.9 src/tests/dev/raidframe/t_raid.sh Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/dev/raidframe/t_raid.sh diff -u src/tests/dev/raidframe/t_raid.sh:1.8 src/tests/dev/raidframe/t_raid.sh:1.9 --- src/tests/dev/raidframe/t_raid.sh:1.8 Sat May 14 17:42:28 2011 +++ src/tests/dev/raidframe/t_raid.sh Fri Jul 29 19:57:38 2011 @@ -1,4 +1,5 @@ -# $NetBSD: t_raid.sh,v 1.8 2011/05/14 17:42:28 jmmv Exp $ +#! /usr/bin/atf-sh +# $NetBSD: t_raid.sh,v 1.9 2011/07/29 19:57:38 oster Exp $ # # Copyright (c) 2010 The NetBSD Foundation, Inc. # All rights reserved. @@ -125,7 +126,8 @@ atf_test_case raid1_comp0fail cleanup raid1_comp0fail_head() { - atf_set "descr" "Checks configuring RAID1 after component 0 fails" + atf_set "descr" "Checks configuring RAID1 after component 0 fails" \ + "(PR kern/44251)" } raid1_comp0fail_body() @@ -144,12 +146,11 @@ # restart server with failed component rump.halt rm disk0.img # FAIL - atf_check -s exit:0 ${raidserver} \ + atf_check -s exit:0 ${raidserver} \ -d key=/disk0,hostpath=disk0.img,size=${RAID_MEDIASIZE} \ -d key=/disk1,hostpath=disk1.img,size=${RAID_MEDIASIZE} \ ${RUMP_SERVER} - atf_expect_fail "PR kern/44251" atf_check -s exit:0 rump.raidctl -c raid.conf raid0 } @@ -159,6 +160,53 @@ rump.halt } +atf_test_case raid1_normal cleanup +raid1_normal_head() +{ + atf_set "descr" "Checks that RAID1 -c configurations work " \ + "in the normal case" +} + +raid1_normal_body() +{ + makecfg 1 2 + atf_check -s exit:0 ${raidserver} \ + -d key=/disk0,hostpath=disk0.img,size=${RAID_MEDIASIZE} \ + -d key=/disk1,hostpath=disk1.img,size=${RAID_MEDIASIZE} \ + ${RUMP_SERVER} + + atf_check -s exit:0 rump.raidctl -C raid.conf raid0 + atf_check -s exit:0 rump.raidctl -I 12345 raid0 + atf_check -s exit:0 -o ignore rump.raidctl -iv raid0 + + # put some data there + atf_check -s exit:0 -e ignore \ + dd if=$(atf_get_srcdir)/t_raid of=testfile count=4 + atf_check -s exit:0 -e ignore -x \ + "dd if=testfile | rump.dd of=${rawraid} conv=sync" + + # restart server, disks remain normal + rump.halt + + atf_check -s exit:0 ${raidserver} \ + -d key=/disk0,hostpath=disk0.img,size=${RAID_MEDIASIZE} \ + -d key=/disk1,hostpath=disk1.img,size=${RAID_MEDIASIZE} \ + ${RUMP_SERVER} + + atf_check -s exit:0 rump.raidctl -c raid.conf raid0 + + # check if we we get what we wrote + atf_check -s exit:0 -o file:testfile -e ignore \ + rump.dd if=${rawraid} count=4 + +} + +raid1_comp0fail_cleanup() +{ + export RUMP_SERVER=unix://sock + rump.halt +} + atf_test_case raid5_compfail cleanup raid5_compfail_head() @@ -208,11 +256,61 @@ rump.halt } +atf_test_case raid5_normal cleanup +raid5_normal_head() +{ + atf_set "descr" "Checks that RAID5 works after normal shutdown " \ + "and 'raidctl -c' startup" +} + +raid5_normal_body() +{ + makecfg 5 3 + export RUMP_SERVER=unix://sock + atf_check -s exit:0 ${raidserver} \ + -d key=/disk0,hostpath=disk0.img,size=${RAID_MEDIASIZE} \ + -d key=/disk1,hostpath=disk1.img,size=${RAID_MEDIASIZE} \ + -d key=/disk2,hostpath=disk2.img,size=${RAID_MEDIASIZE} \ + ${RUMP_SERVER} + + atf_check -s exit:0 rump.raidctl -C raid.conf raid0 + atf_check -s exit:0 rump.raidctl -I 12345 raid0 + atf_check -s exit:0 -o ignore rump.raidctl -iv raid0 + + # put some data there + atf_check -s exit:0 -e ignore \ + dd if=$(atf_get_srcdir)/t_raid of=testfile count=4 + atf_check -s exit:0 -e ignore -x \ + "dd if=testfile | rump.dd of=${rawraid} conv=sync" + + # restart server after normal shutdown + rump.halt + + atf_check -s exit:0 ${raidserver} \ + -d key=/disk0,hostpath=disk0.img,size=${RAID_MEDIASIZE} \ + -d key=/disk1,hostpath=disk1.img,size=${RAID_MEDIASIZE} \ + -d key=/disk2,hostpath=disk2.img,size=${RAID_MEDIASIZE} \ + ${RUMP_SERVER} + + atf_check -s exit:0 rump.raidctl -c raid.conf raid0 + + # check if we we get what we wrote + atf_check -s exit:0 -o file:testfile -e ignore \ + rump.dd if=${rawraid} count=4 +} + +raid5_normal_cleanup() +{ + export RUMP_SERVER=unix://sock + rump.halt +} atf_init_test_cases() { atf_add_test_case smalldisk + atf_add_test_case raid1_normal atf_add_test_case raid1_comp0fail atf_add_test_case raid1_compfail + atf_add_test_case raid5_normal atf_add_test_case raid5_compfail }