test/bdevperf: test config file
Signed-off-by: Maciej Wawryk <maciejx.wawryk@intel.com>
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Signed-off-by: Vitaliy Mysak <vitaliy.mysak@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3291 (master)
(cherry picked from commit 8991773390
)
Change-Id: I6a92345e1c3fae1f7f8b77bc68e0f715e7ac9ed9
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/3544
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
parent
6b41a08654
commit
459d3e8f07
@ -173,6 +173,7 @@ if [ $SPDK_RUN_FUNCTIONAL_TEST -eq 1 ]; then
|
|||||||
if [ $SPDK_TEST_BLOCKDEV -eq 1 ]; then
|
if [ $SPDK_TEST_BLOCKDEV -eq 1 ]; then
|
||||||
run_test "blockdev_general" test/bdev/blockdev.sh
|
run_test "blockdev_general" test/bdev/blockdev.sh
|
||||||
run_test "bdev_raid" test/bdev/bdev_raid.sh
|
run_test "bdev_raid" test/bdev/bdev_raid.sh
|
||||||
|
run_test "bdevperf_config" test/bdev/bdevperf/test_config.sh
|
||||||
if [[ $(uname -s) == Linux ]]; then
|
if [[ $(uname -s) == Linux ]]; then
|
||||||
run_test "spdk_dd" test/dd/dd.sh
|
run_test "spdk_dd" test/dd/dd.sh
|
||||||
fi
|
fi
|
||||||
|
33
test/bdev/bdevperf/common.sh
Normal file
33
test/bdev/bdevperf/common.sh
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
bdevperf=$rootdir/test/bdev/bdevperf/bdevperf
|
||||||
|
|
||||||
|
function create_job() {
|
||||||
|
local job_section=$1
|
||||||
|
local rw=$2
|
||||||
|
local filename=$3
|
||||||
|
|
||||||
|
if [[ $job_section == "global" ]]; then
|
||||||
|
cat <<- EOF >> "$testdir"/test.conf
|
||||||
|
[global]
|
||||||
|
filename=${filename}
|
||||||
|
EOF
|
||||||
|
fi
|
||||||
|
job="[${job_section}]"
|
||||||
|
echo $global
|
||||||
|
cat <<- EOF >> "$testdir"/test.conf
|
||||||
|
${job}
|
||||||
|
filename=${filename}
|
||||||
|
bs=1024
|
||||||
|
rwmixread=70
|
||||||
|
rw=${rw}
|
||||||
|
iodepth=256
|
||||||
|
cpumask=0xff
|
||||||
|
EOF
|
||||||
|
}
|
||||||
|
|
||||||
|
function get_num_jobs() {
|
||||||
|
echo "$1" | grep -oE "Using job config with [0-9]+ jobs" | grep -oE "[0-9]+"
|
||||||
|
}
|
||||||
|
|
||||||
|
function cleanup() {
|
||||||
|
rm -f $testdir/test.conf
|
||||||
|
}
|
25
test/bdev/bdevperf/conf.json
Normal file
25
test/bdev/bdevperf/conf.json
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
{
|
||||||
|
"subsystems": [
|
||||||
|
{
|
||||||
|
"subsystem": "bdev",
|
||||||
|
"config": [
|
||||||
|
{
|
||||||
|
"method": "bdev_malloc_create",
|
||||||
|
"params": {
|
||||||
|
"name": "Malloc0",
|
||||||
|
"num_blocks": 102400,
|
||||||
|
"block_size": 512
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"method": "bdev_malloc_create",
|
||||||
|
"params": {
|
||||||
|
"name": "Malloc1",
|
||||||
|
"num_blocks": 102400,
|
||||||
|
"block_size": 512
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
41
test/bdev/bdevperf/test_config.sh
Executable file
41
test/bdev/bdevperf/test_config.sh
Executable file
@ -0,0 +1,41 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
testdir=$(readlink -f $(dirname $0))
|
||||||
|
rootdir=$(readlink -f $testdir/../../..)
|
||||||
|
source $rootdir/test/common/autotest_common.sh
|
||||||
|
source $testdir/common.sh
|
||||||
|
|
||||||
|
jsonconf=$testdir/conf.json
|
||||||
|
testconf=$testdir/test.conf
|
||||||
|
|
||||||
|
trap 'cleanup; exit 1' SIGINT SIGTERM EXIT
|
||||||
|
#Test inheriting filename and rw_mode parameters from global section.
|
||||||
|
create_job "global" "read" "Malloc0"
|
||||||
|
create_job "job0"
|
||||||
|
create_job "job1"
|
||||||
|
create_job "job2"
|
||||||
|
create_job "job3"
|
||||||
|
bdevperf_output=$($bdevperf -t 2 --json $jsonconf -j $testconf 2>&1)
|
||||||
|
[[ $(get_num_jobs "$bdevperf_output") == "4" ]]
|
||||||
|
|
||||||
|
bdevperf_output=$($bdevperf -C -t 2 --json $jsonconf -j $testconf)
|
||||||
|
|
||||||
|
cleanup
|
||||||
|
#Test missing global section.
|
||||||
|
create_job "job0" "write" "Malloc0"
|
||||||
|
create_job "job1" "write" "Malloc0"
|
||||||
|
create_job "job2" "write" "Malloc0"
|
||||||
|
bdevperf_output=$($bdevperf -t 2 --json $jsonconf -j $testconf 2>&1)
|
||||||
|
[[ $(get_num_jobs "$bdevperf_output") == "3" ]]
|
||||||
|
|
||||||
|
cleanup
|
||||||
|
#Test inheriting multiple filenames and rw_mode parameters from global section.
|
||||||
|
create_job "global" "rw" "Malloc0:Malloc1"
|
||||||
|
create_job "job0"
|
||||||
|
create_job "job1"
|
||||||
|
create_job "job2"
|
||||||
|
create_job "job3"
|
||||||
|
bdevperf_output=$($bdevperf -t 2 --json $jsonconf -j $testconf 2>&1)
|
||||||
|
[[ $(get_num_jobs "$bdevperf_output") == "4" ]]
|
||||||
|
cleanup
|
||||||
|
trap - SIGINT SIGTERM EXIT
|
Loading…
Reference in New Issue
Block a user