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>

*** 24,34 **** # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # ! # Copyright (c) 2013 by Delphix. All rights reserved. # . $STF_SUITE/include/libtest.shlib . $STF_SUITE/tests/functional/refreserv/refreserv.cfg --- 24,34 ---- # Copyright 2009 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # # ! # Copyright (c) 2013, 2016 by Delphix. All rights reserved. # . $STF_SUITE/include/libtest.shlib . $STF_SUITE/tests/functional/refreserv/refreserv.cfg
*** 45,90 **** verify_runnable "both" function cleanup { if is_global_zone ; then ! log_must $ZFS set refreservation=none $TESTPOOL fi ! log_must $ZFS destroy -rf $TESTPOOL/$TESTFS ! log_must $ZFS create $TESTPOOL/$TESTFS ! log_must $ZFS set mountpoint=$TESTDIR $TESTPOOL/$TESTFS } log_assert "Verify refreservation is limited by available space." log_onexit cleanup pool=$TESTPOOL ; fs=$pool/$TESTFS ; subfs=$fs/subfs ! log_must $ZFS create $subfs typeset datasets if is_global_zone; then datasets="$pool $fs" else datasets="$fs" fi for ds in $datasets; do ! log_must $ZFS set quota=25M $ds ! log_must $ZFS set refreservation=15M $ds typeset -i avail avail=$(get_prop avail $subfs) ! log_must $ZFS set refreservation=$avail $subfs typeset mntpnt mntpnt=$(get_prop mountpoint $subfs) ! log_must $MKFILE $avail $mntpnt/$TESTFILE typeset -i exceed ((exceed = avail + 1)) ! log_mustnot $ZFS set refreservation=$exceed $subfs ! log_mustnot $MKFILE $avail $mntpnt/$TESTFILE ! log_must $ZFS set quota=none $ds ! log_must $ZFS set reservation=15M $ds done log_pass "Verify refreservation is limited by available space." --- 45,90 ---- verify_runnable "both" function cleanup { if is_global_zone ; then ! log_must zfs set refreservation=none $TESTPOOL fi ! log_must zfs destroy -rf $TESTPOOL/$TESTFS ! log_must zfs create $TESTPOOL/$TESTFS ! log_must zfs set mountpoint=$TESTDIR $TESTPOOL/$TESTFS } log_assert "Verify refreservation is limited by available space." log_onexit cleanup pool=$TESTPOOL ; fs=$pool/$TESTFS ; subfs=$fs/subfs ! log_must zfs create $subfs typeset datasets if is_global_zone; then datasets="$pool $fs" else datasets="$fs" fi for ds in $datasets; do ! log_must zfs set quota=25M $ds ! log_must zfs set refreservation=15M $ds typeset -i avail avail=$(get_prop avail $subfs) ! log_must zfs set refreservation=$avail $subfs typeset mntpnt mntpnt=$(get_prop mountpoint $subfs) ! log_must mkfile $avail $mntpnt/$TESTFILE typeset -i exceed ((exceed = avail + 1)) ! log_mustnot zfs set refreservation=$exceed $subfs ! log_mustnot mkfile $avail $mntpnt/$TESTFILE ! log_must zfs set quota=none $ds ! log_must zfs set reservation=15M $ds done log_pass "Verify refreservation is limited by available space."