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>

Split Close
Expand all
Collapse all
          --- old/usr/src/test/zfs-tests/tests/functional/reservation/reservation_010_pos.sh
          +++ new/usr/src/test/zfs-tests/tests/functional/reservation/reservation_010_pos.sh
↓ open down ↓ 18 lines elided ↑ open up ↑
  19   19  #
  20   20  # CDDL HEADER END
  21   21  #
  22   22  
  23   23  #
  24   24  # Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
  25   25  # Use is subject to license terms.
  26   26  #
  27   27  
  28   28  #
  29      -# Copyright (c) 2013 by Delphix. All rights reserved.
       29 +# Copyright (c) 2013, 2016 by Delphix. All rights reserved.
  30   30  #
  31   31  
  32   32  . $STF_SUITE/include/libtest.shlib
  33   33  . $STF_SUITE/tests/functional/reservation/reservation.shlib
  34   34  
  35   35  #
  36   36  # DESCRIPTION:
  37   37  #
  38   38  # In pool with a full filesystem and a filesystem with a reservation
  39   39  # destroying another filesystem should allow more data to be written to
↓ open down ↓ 10 lines elided ↑ open up ↑
  50   50  #
  51   51  
  52   52  verify_runnable "both"
  53   53  
  54   54  log_assert "Destroying top level filesystem with reservation allows more " \
  55   55      "data to be written to another top level filesystem"
  56   56  
  57   57  function cleanup
  58   58  {
  59   59          datasetexists $TESTPOOL/$TESTFS1 && \
  60      -            log_must $ZFS destroy $TESTPOOL/$TESTFS1
       60 +            log_must zfs destroy $TESTPOOL/$TESTFS1
  61   61  
  62      -        [[ -e $TESTDIR/$TESTFILE1 ]] && log_must $RM -rf $TESTDIR/$TESTFILE1
  63      -        [[ -e $TESTDIR/$TESTFILE2 ]] && log_must $RM -rf $TESTDIR/$TESTFILE2
       62 +        [[ -e $TESTDIR/$TESTFILE1 ]] && log_must rm -rf $TESTDIR/$TESTFILE1
       63 +        [[ -e $TESTDIR/$TESTFILE2 ]] && log_must rm -rf $TESTDIR/$TESTFILE2
  64   64  }
  65   65  
  66   66  log_onexit cleanup
  67   67  
  68      -log_must $ZFS create $TESTPOOL/$TESTFS1
       68 +log_must zfs create $TESTPOOL/$TESTFS1
  69   69  
  70   70  space_avail=`get_prop available $TESTPOOL`
  71   71  
  72   72  #
  73   73  # To make sure this test doesn't take too long to execute on
  74   74  # large pools, we calculate a reservation setting which when
  75   75  # applied to the dataset filesystem  will ensure we have
  76   76  # RESV_FREE_SPACE left free in the pool.
  77   77  #
  78   78  ((resv_size_set = space_avail - RESV_FREE_SPACE))
  79   79  
  80      -log_must $ZFS set reservation=$resv_size_set $TESTPOOL/$TESTFS1
       80 +log_must zfs set reservation=$resv_size_set $TESTPOOL/$TESTFS1
  81   81  
  82   82  space_avail_still=`get_prop available $TESTPOOL`
  83   83  
  84   84  fill_size=`expr $space_avail_still + $RESV_TOLERANCE`
  85   85  write_count=`expr $fill_size / $BLOCK_SIZE`
  86   86  
  87   87  # Now fill up the filesystem (which doesn't have a reservation set
  88   88  # and thus will use up whatever free space is left in the pool).
  89      -$FILE_WRITE -o create -f $TESTDIR/$TESTFILE1 -b $BLOCK_SIZE -c $write_count -d 0
       89 +file_write -o create -f $TESTDIR/$TESTFILE1 -b $BLOCK_SIZE -c $write_count -d 0
  90   90  ret=$?
  91   91  if (($ret != $ENOSPC)); then
  92   92          log_fail "Did not get ENOSPC as expected (got $ret)."
  93   93  fi
  94   94  
  95      -log_must $ZFS destroy -f $TESTPOOL/$TESTFS1
       95 +log_must zfs destroy -f $TESTPOOL/$TESTFS1
  96   96  
  97      -log_must $FILE_WRITE -o create -f $TESTDIR/$TESTFILE2 -b $PAGESIZE \
       97 +log_must file_write -o create -f $TESTDIR/$TESTFILE2 -b pagesize \
  98   98      -c 1000 -d 0
  99   99  
 100  100  log_pass "Destroying top level filesystem with reservation allows more data " \
 101  101      "to be written to another top level filesystem"
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX