1 #
   2 # CDDL HEADER START
   3 #
   4 # The contents of this file are subject to the terms of the
   5 # Common Development and Distribution License (the "License").
   6 # You may not use this file except in compliance with the License.
   7 #
   8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   9 # or http://www.opensolaris.org/os/licensing.
  10 # See the License for the specific language governing permissions
  11 # and limitations under the License.
  12 #
  13 # When distributing Covered Code, include this CDDL HEADER in each
  14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15 # If applicable, add the following below this CDDL HEADER, with the
  16 # fields enclosed by brackets "[]" replaced with your own identifying
  17 # information: Portions Copyright [yyyy] [name of copyright owner]
  18 #
  19 # CDDL HEADER END
  20 #
  21 
  22 #
  23 # Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  24 # Use is subject to license terms.
  25 #
  26 
  27 #
  28 # Copyright (c) 2012, 2016 by Delphix. All rights reserved.
  29 #
  30 
  31 . $STF_SUITE/include/commands.cfg
  32 . $STF_SUITE/include/libtest.shlib
  33 
  34 # Define run length constants
  35 export RT_LONG="3"
  36 export RT_MEDIUM="2"
  37 export RT_SHORT="1"
  38 
  39 # Define macro for zone test
  40 export ZONE_POOL="zonepool"
  41 export ZONE_CTR="zonectr"
  42 
  43 # Test Suite Specific Commands
  44 export CHG_USR_EXEC="/opt/zfs-tests/bin/chg_usr_exec"
  45 export DEVNAME2DEVID="/opt/zfs-tests/bin/devname2devid"
  46 export DIR_RD_UPDATE="/opt/zfs-tests/bin/dir_rd_update"
  47 export FILE_CHECK="/opt/zfs-tests/bin/file_check"
  48 export FILE_TRUNC="/opt/zfs-tests/bin/file_trunc"
  49 export FILE_WRITE="/opt/zfs-tests/bin/file_write"
  50 export GETHOLES="/opt/zfs-tests/bin/getholes"
  51 export LARGEST_FILE="/opt/zfs-tests/bin/largest_file"
  52 export MKBUSY="/opt/zfs-tests/bin/mkbusy"
  53 export MKFILES="/opt/zfs-tests/bin/mkfiles"
  54 export MKHOLES="/opt/zfs-tests/bin/mkholes"
  55 export MKTREE="/opt/zfs-tests/bin/mktree"
  56 export MMAPWRITE="/opt/zfs-tests/bin/mmapwrite"
  57 export RANDFREE_FILE="/opt/zfs-tests/bin/randfree_file"
  58 export READMMAP="/opt/zfs-tests/bin/readmmap"
  59 export RENAME_DIR="/opt/zfs-tests/bin/rename_dir"
  60 export RM_LNKCNT_ZERO_FILE="/opt/zfs-tests/bin/rm_lnkcnt_zero_file"
  61 
  62 # ensure we're running in the C locale, since
  63 # localised messages may result in test failures
  64 export LC_ALL="C"
  65 export LANG="C"
  66 
  67 #
  68 # pattern to ignore from 'zpool list'.
  69 #
  70 export NO_POOLS="no pools available"
  71 
  72 # pattern to ignore from 'zfs list'.
  73 export NO_DATASETS="no datasets available"
  74 
  75 export TEST_BASE_DIR="/"
  76 
  77 # Default to compression ON
  78 export COMPRESSION_PROP=on
  79 
  80 # Default to using the checksum
  81 export CHECKSUM_PROP=on
  82 
  83 # some common variables used by test scripts :
  84 export FIO_SCRIPTS=$STF_SUITE/tests/perf/fio
  85 export PERF_SCRIPTS=$STF_SUITE/tests/perf/scripts
  86 
  87 # some test pool names
  88 export TESTPOOL=testpool.$$
  89 export TESTPOOL1=testpool1.$$
  90 export TESTPOOL2=testpool2.$$
  91 export TESTPOOL3=testpool3.$$
  92 export PERFPOOL=perfpool
  93 
  94 # some test file system names
  95 export TESTFS=testfs.$$
  96 export TESTFS1=testfs1.$$
  97 export TESTFS2=testfs2.$$
  98 export TESTFS3=testfs3.$$
  99 
 100 # some test directory names
 101 export TESTDIR=${TEST_BASE_DIR%%/}/testdir$$
 102 export TESTDIR0=${TEST_BASE_DIR%%/}/testdir0$$
 103 export TESTDIR1=${TEST_BASE_DIR%%/}/testdir1$$
 104 export TESTDIR2=${TEST_BASE_DIR%%/}/testdir2$$
 105 
 106 export ZFSROOT=
 107 
 108 export TESTSNAP=testsnap$$
 109 export TESTSNAP1=testsnap1$$
 110 export TESTSNAP2=testsnap2$$
 111 export TESTCLONE=testclone$$
 112 export TESTCLONE1=testclone1$$
 113 export TESTCLONE2=testclone2$$
 114 export TESTCLCT=testclct$$
 115 export TESTCTR=testctr$$
 116 export TESTCTR1=testctr1$$
 117 export TESTCTR2=testctr2$$
 118 export TESTVOL=testvol$$
 119 export TESTVOL1=testvol1$$
 120 export TESTVOL2=testvol2$$
 121 export TESTFILE0=testfile0.$$
 122 export TESTFILE1=testfile1.$$
 123 export TESTFILE2=testfile2.$$
 124 
 125 export LONGPNAME="poolname50charslong_012345678901234567890123456789"
 126 export LONGFSNAME="fsysname50charslong_012345678901234567890123456789"
 127 export SNAPFS="$TESTPOOL/$TESTFS@$TESTSNAP"
 128 export SNAPFS1="$TESTPOOL/$TESTVOL@$TESTSNAP"
 129 
 130 export VOLSIZE=150m
 131 export BIGVOLSIZE=1eb
 132 
 133 # Default to limit disks to be checked
 134 export MAX_FINDDISKSNUM=6
 135 
 136 # Default minimum size for file based vdevs in the test suite
 137 export MINVDEVSIZE=$((256 * 1024 * 1024))
 138 
 139 # Minimum vdev size possible as defined in the OS
 140 export SPA_MINDEVSIZE=$((64 * 1024 * 1024))
 141 
 142 export AUTO_SNAP=$($SVCS -a | $GREP auto-snapshot | $GREP online | $AWK \
 143     '{print $3}')
 144 
 145 # finally, if we're running in a local zone
 146 # we take some additional actions
 147 if ! is_global_zone; then
 148         reexport_pool
 149 fi
 150 
 151 export ZFS_VERSION=5
 152 export ZFS_ALL_VERSIONS="1 2 3 4 5"
 153 
 154 for i in $ZFS_ALL_VERSIONS; do
 155         eval 'export ZFS_VERSION_$i="v${i}-fs"'
 156 done