Skip to content

Commit

Permalink
Merge pull request #3388 from janekmi/test-pmempool_transform-require…
Browse files Browse the repository at this point in the history
…_free_space

 test: add missing requirements
  • Loading branch information
marcinslusarz authored Oct 26, 2018
2 parents 9476bdf + d77bc55 commit 99bcfae
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 14 deletions.
10 changes: 5 additions & 5 deletions src/test/pmempool_transform/TEST11
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,11 @@ require_dax_device_alignments $SIZE_4KB $SIZE_4KB

setup

OFFSET=$(get_devdax_size 0)
ROOT_SIZE=$[OFFSET + 1024]
MAX_SIZE=$[PMEMOBJ_MAX_ALLOC_SIZE - 1024]
require_max_devdax_size 0 $MAX_SIZE

dax_device_zero

LOG=out${UNITTEST_NUM}.log
Expand All @@ -67,11 +72,6 @@ create_poolset $POOLSET_OUT \
AUTO:${DEVICE_DAX_PATH[0]}:x \
AUTO:${DEVICE_DAX_PATH[1]}:x

DAX_SIZE[0]=$(get_devdax_size 0)

OFFSET=${DAX_SIZE[0]}
ROOT_SIZE=$[OFFSET + 1024]

# CLI script for writing some data hitting all the parts
WRITE_SCRIPT=$DIR/write_data
cat << EOF > $WRITE_SCRIPT
Expand Down
7 changes: 5 additions & 2 deletions src/test/pmempool_transform/TEST14
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,11 @@ require_dax_device_alignments $SIZE_4KB $SIZE_4KB

setup

# test requires at least (size of device DAX #0 + 1G) of free space in $DIR
DAX_SIZE[0]=$(get_devdax_size 0)
SIZE_1G=$(convert_to_bytes 1G)
require_free_space $(( DAX_SIZE[0] + SIZE_1G ))

dax_device_zero

LOG=out${UNITTEST_NUM}.log
Expand All @@ -59,8 +64,6 @@ LAYOUT=OBJ_LAYOUT$SUFFIX
POOLSET_IN=$DIR/poolset.in
POOLSET_OUT=$DIR/poolset.out

DAX_SIZE[0]=$(get_devdax_size 0)

# Create poolset files
create_poolset $POOLSET_IN \
AUTO:${DEVICE_DAX_PATH[0]}:x \
Expand Down
10 changes: 5 additions & 5 deletions src/test/pmempool_transform/TEST15
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,11 @@ require_dax_device_alignments $SIZE_4KB $SIZE_4KB

setup

OFFSET=$(get_devdax_size 0)
ROOT_SIZE=$[OFFSET + 8192]
MAX_SIZE=$[PMEMOBJ_MAX_ALLOC_SIZE - 8192]
require_max_devdax_size 0 $MAX_SIZE

dax_device_zero

LOG=out${UNITTEST_NUM}.log
Expand All @@ -68,11 +73,6 @@ create_poolset $POOLSET_OUT \
AUTO:${DEVICE_DAX_PATH[0]}:x \
AUTO:${DEVICE_DAX_PATH[1]}:x

DAX_SIZE[0]=$(get_devdax_size 0)

OFFSET=${DAX_SIZE[0]}
ROOT_SIZE=$[OFFSET + 8192]

# CLI script for writing some data hitting all the parts
WRITE_SCRIPT=$DIR/write_data
cat << EOF > $WRITE_SCRIPT
Expand Down
7 changes: 5 additions & 2 deletions src/test/pmempool_transform/TEST18
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@ require_dax_device_alignments $SIZE_4KB $SIZE_4KB

setup

# test requires at least (size of device DAX #0 + 1G) of free space in $DIR
DAX_SIZE[0]=$(get_devdax_size 0)
SIZE_1G=$(convert_to_bytes 1G)
require_free_space $(( DAX_SIZE[0] + SIZE_1G ))

dax_device_zero

LOG=out${UNITTEST_NUM}.log
Expand All @@ -60,8 +65,6 @@ LAYOUT=OBJ_LAYOUT$SUFFIX
POOLSET_IN=$DIR/poolset.in
POOLSET_OUT=$DIR/poolset.out

DAX_SIZE[0]=$(get_devdax_size 0)

# Create poolset files
create_poolset $POOLSET_IN \
AUTO:${DEVICE_DAX_PATH[0]}:x \
Expand Down
17 changes: 17 additions & 0 deletions src/test/unittest/unittest.sh
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,9 @@ NODES_MAX=-1
SIZE_4KB=4096
SIZE_2MB=2097152

# PMEMOBJ limitations
PMEMOBJ_MAX_ALLOC_SIZE=17177771968

# SSH and SCP options
SSH_OPTS="-o BatchMode=yes"
SCP_OPTS="-o BatchMode=yes -r -p"
Expand Down Expand Up @@ -3465,6 +3468,20 @@ function require_free_space() {
fi
}

#
# require_max_devdax_size -- checks that dev dax is smaller than requested
#
# usage: require_max_devdax_size <dev-dax-num> <max-size>
#
function require_max_devdax_size() {
cur_sz=$(get_devdax_size 0)
max_size=$2
if [ $cur_sz -ge $max_size ]; then
msg "$UNITTEST_NAME: SKIP: DevDAX $1 is too big for this test (max $2 required)"
exit 0
fi
}

#
# require_nfit_tests_enabled - check if tests using the nfit_test kernel module are not enabled
#
Expand Down

0 comments on commit 99bcfae

Please sign in to comment.