aboutsummaryrefslogtreecommitdiffstats
path: root/tests/zfs-tests
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2017-02-01 16:28:01 -0800
committerGitHub <[email protected]>2017-02-01 16:28:01 -0800
commit8eecd4a2de217b3f7a40982dcf7765bc0c4104ba (patch)
tree4df193e44a2bd36264f7146fd6f5098f804f8edc /tests/zfs-tests
parent0f676dc228862ce0b4f9e27d06d394e9cbaa32e3 (diff)
Fix reservation test cases for large disks
Convert explicit `typeset -i` and `typeset -l` declarations to `typeset` in order to prevent 32-bit overflow from occurs with disks >2G. TEST_ZFSTESTS_DISKSIZE=4G Reviewed-by: George Melikov <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #5715 Closes #5714
Diffstat (limited to 'tests/zfs-tests')
-rw-r--r--tests/zfs-tests/tests/functional/reservation/reservation.shlib44
-rwxr-xr-xtests/zfs-tests/tests/functional/reservation/reservation_017_pos.sh14
-rwxr-xr-xtests/zfs-tests/tests/functional/reservation/reservation_018_pos.sh2
3 files changed, 30 insertions, 30 deletions
diff --git a/tests/zfs-tests/tests/functional/reservation/reservation.shlib b/tests/zfs-tests/tests/functional/reservation/reservation.shlib
index e58e19815..27e9a87e0 100644
--- a/tests/zfs-tests/tests/functional/reservation/reservation.shlib
+++ b/tests/zfs-tests/tests/functional/reservation/reservation.shlib
@@ -70,9 +70,9 @@ function zero_reservation
#
function within_limits
{
- typeset -l valA=$1
- typeset -l valB=$2
- typeset -l delta=$3
+ typeset valA=$1
+ typeset valB=$2
+ typeset delta=$3
if ((valA <= valB)); then
if (((valB - valA) <= delta)); then
@@ -115,14 +115,14 @@ function create_multiple_fs # num_fs base_fs_name base_mnt_name
#
function floor_volsize #<largest_volsize> [volblksize]
{
- typeset -l largest_volsize=$1
- typeset -l volblksize=${2:-8192}
+ typeset largest_volsize=$1
+ typeset volblksize=${2:-8192}
if ((largest_volsize < volblksize)); then
log_fail "The largest_volsize must be greater than volblksize."
fi
- typeset -l real_volsize
- typeset -l n
+ typeset real_volsize
+ typeset n
((n = largest_volsize / volblksize))
((largest_volsize = volblksize * n))
@@ -142,26 +142,26 @@ function floor_volsize #<largest_volsize> [volblksize]
function volsize_to_reservation
{
typeset vol=$1
- typeset -i volsize=$2
+ typeset volsize=$2
- typeset -i DN_MAX_INDBLKSHIFT=14
- typeset -i SPA_BLKPTRSHIFT=7
- typeset -i SPA_DVAS_PER_BP=3
+ typeset DN_MAX_INDBLKSHIFT=14
+ typeset SPA_BLKPTRSHIFT=7
+ typeset SPA_DVAS_PER_BP=3
- typeset -i DNODES_PER_LEVEL_SHIFT=$((DN_MAX_INDBLKSHIFT - \
+ typeset DNODES_PER_LEVEL_SHIFT=$((DN_MAX_INDBLKSHIFT - \
SPA_BLKPTRSHIFT))
- typeset -i DNODES_PER_LEVEL=$((1 << $DNODES_PER_LEVEL_SHIFT))
+ typeset DNODES_PER_LEVEL=$((1 << $DNODES_PER_LEVEL_SHIFT))
if ds_is_volume $vol; then
- typeset -i ncopies=$(get_prop copies $vol)
- typeset -i volblocksize=$(get_prop volblocksize $vol)
+ typeset ncopies=$(get_prop copies $vol)
+ typeset volblocksize=$(get_prop volblocksize $vol)
else
- typeset -i ncopies=1
- typeset -i volblocksize=8192
+ typeset ncopies=1
+ typeset volblocksize=8192
fi
- typeset -i nblocks=$((volsize / volblocksize))
+ typeset nblocks=$((volsize / volblocksize))
- typeset -i numdb=7
+ typeset numdb=7
while ((nblocks > 1)); do
((nblocks += DNODES_PER_LEVEL - 1))
((nblocks /= DNODES_PER_LEVEL))
@@ -186,9 +186,9 @@ function volsize_to_reservation
function largest_volsize_from_pool
{
typeset pool=$1
- typeset -i poolsize=$(get_prop available $pool)
- typeset -i volsize=$poolsize
- typeset -i nvolsize
+ typeset poolsize=$(get_prop available $pool)
+ typeset volsize=$poolsize
+ typeset nvolsize
while :; do
# knock 50M off the volsize each time through
diff --git a/tests/zfs-tests/tests/functional/reservation/reservation_017_pos.sh b/tests/zfs-tests/tests/functional/reservation/reservation_017_pos.sh
index b0a5f451c..d9b5739ee 100755
--- a/tests/zfs-tests/tests/functional/reservation/reservation_017_pos.sh
+++ b/tests/zfs-tests/tests/functional/reservation/reservation_017_pos.sh
@@ -70,13 +70,13 @@ sparsevol=$TESTPOOL/$TESTVOL2
log_must $ZFS create -V 64M $regvol
log_must $ZFS create -s -V 64M $sparsevol
-typeset -i vsize=$(get_prop available $TESTPOOL)
-typeset -i iterate=10
-typeset -i regreserv
-typeset -i sparsereserv
-typeset -i volblocksize=$(get_prop volblocksize $regvol)
-typeset -i blknum=0
-typeset -i randomblknum
+typeset vsize=$(get_prop available $TESTPOOL)
+typeset iterate=10
+typeset regreserv
+typeset sparsereserv
+typeset volblocksize=$(get_prop volblocksize $regvol)
+typeset blknum=0
+typeset randomblknum
((blknum = vsize / volblocksize))
while ((iterate > 1)); do
diff --git a/tests/zfs-tests/tests/functional/reservation/reservation_018_pos.sh b/tests/zfs-tests/tests/functional/reservation/reservation_018_pos.sh
index 9236fd09e..3c02b9ebc 100755
--- a/tests/zfs-tests/tests/functional/reservation/reservation_018_pos.sh
+++ b/tests/zfs-tests/tests/functional/reservation/reservation_018_pos.sh
@@ -60,7 +60,7 @@ fs_child=$TESTPOOL/$TESTFS/$TESTFS
space_avail=$(get_prop available $fs)
reserv_val=$(get_prop reservation $fs)
-typeset -l reservsize=$space_avail
+typeset reservsize=$space_avail
((reservsize = reservsize / 2))
log_must $ZFS set reservation=$reservsize $fs