Print this page
7290 ZFS test suite needs to control what utilities it can run
Reviewed by: Dan Kimmel <dan.kimmel@delphix.com>
Reviewed by: Matthew Ahrens <mahrens@delphix.com>

*** 22,36 **** # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # ! # Copyright (c) 2012 by Delphix. All rights reserved. # # ! # Copyright (c) 2013 by Delphix. All rights reserved. # . $STF_SUITE/include/libtest.shlib . $STF_SUITE/tests/functional/xattr/xattr_common.kshlib --- 22,36 ---- # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # ! # Copyright (c) 2012, 2016 by Delphix. All rights reserved. # # ! # Copyright (c) 2013, 2016 by Delphix. All rights reserved. # . $STF_SUITE/include/libtest.shlib . $STF_SUITE/tests/functional/xattr/xattr_common.kshlib
*** 44,73 **** # 3. Check pool and filesystem usage, to ensure it reflects the size # of the xattr # function cleanup { ! log_must $RM $TESTDIR/myfile.$$ } function get_pool_size { poolname=$1 ! psize=$($ZPOOL list -H -o allocated $poolname) if [[ $psize == *[mM] ]] then ! returnvalue=$($ECHO $psize | $SED -e 's/m//g' -e 's/M//g') returnvalue=$((returnvalue * 1024)) else ! returnvalue=$($ECHO $psize | $SED -e 's/k//g' -e 's/K//g') fi echo $returnvalue } log_assert "xattr file sizes count towards normal disk usage" log_onexit cleanup ! log_must $TOUCH $TESTDIR/myfile.$$ POOL_SIZE=0 NEW_POOL_SIZE=0 if is_global_zone --- 44,73 ---- # 3. Check pool and filesystem usage, to ensure it reflects the size # of the xattr # function cleanup { ! log_must rm $TESTDIR/myfile.$$ } function get_pool_size { poolname=$1 ! psize=$(zpool list -H -o allocated $poolname) if [[ $psize == *[mM] ]] then ! returnvalue=$(echo $psize | sed -e 's/m//g' -e 's/M//g') returnvalue=$((returnvalue * 1024)) else ! returnvalue=$(echo $psize | sed -e 's/k//g' -e 's/K//g') fi echo $returnvalue } log_assert "xattr file sizes count towards normal disk usage" log_onexit cleanup ! log_must touch $TESTDIR/myfile.$$ POOL_SIZE=0 NEW_POOL_SIZE=0 if is_global_zone
*** 75,90 **** # get pool and filesystem sizes. Since we're starting with an empty # pool, the usage should be small - a few k. POOL_SIZE=$(get_pool_size $TESTPOOL) fi ! FS_SIZE=$($ZFS get -p -H -o value used $TESTPOOL/$TESTFS) ! log_must $RUNAT $TESTDIR/myfile.$$ $MKFILE 200m xattr #Make sure the newly created file is counted into zpool usage ! log_must $SYNC # now check to see if our pool disk usage has increased if is_global_zone then NEW_POOL_SIZE=$(get_pool_size $TESTPOOL) --- 75,90 ---- # get pool and filesystem sizes. Since we're starting with an empty # pool, the usage should be small - a few k. POOL_SIZE=$(get_pool_size $TESTPOOL) fi ! FS_SIZE=$(zfs get -p -H -o value used $TESTPOOL/$TESTFS) ! log_must runat $TESTDIR/myfile.$$ mkfile 200m xattr #Make sure the newly created file is counted into zpool usage ! log_must sync # now check to see if our pool disk usage has increased if is_global_zone then NEW_POOL_SIZE=$(get_pool_size $TESTPOOL)
*** 93,103 **** than or equal to the old pool size $POOL_SIZE." fi # also make sure our filesystem usage has increased ! NEW_FS_SIZE=$($ZFS get -p -H -o value used $TESTPOOL/$TESTFS) (($NEW_FS_SIZE <= $FS_SIZE)) && \ log_fail "The new filesystem size $NEW_FS_SIZE was less \ than or equal to the old filesystem size $FS_SIZE." log_pass "xattr file sizes count towards normal disk usage" --- 93,103 ---- than or equal to the old pool size $POOL_SIZE." fi # also make sure our filesystem usage has increased ! NEW_FS_SIZE=$(zfs get -p -H -o value used $TESTPOOL/$TESTFS) (($NEW_FS_SIZE <= $FS_SIZE)) && \ log_fail "The new filesystem size $NEW_FS_SIZE was less \ than or equal to the old filesystem size $FS_SIZE." log_pass "xattr file sizes count towards normal disk usage"