2019-10-04 15:43:58 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
2019-11-18 14:55:26 +00:00
|
|
|
curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}"))
|
2019-10-04 15:43:58 +00:00
|
|
|
rootdir=$(readlink -f $curdir/../../..)
|
|
|
|
source $rootdir/test/common/autotest_common.sh
|
|
|
|
|
|
|
|
rpc_py=$rootdir/scripts/rpc.py
|
|
|
|
|
|
|
|
rm -f aio*
|
|
|
|
truncate -s 128M aio0
|
|
|
|
truncate -s 128M aio1
|
|
|
|
|
2020-03-17 09:59:19 +00:00
|
|
|
jq . <<- JSON > "$curdir/config"
|
|
|
|
{
|
|
|
|
"subsystems": [
|
|
|
|
{
|
|
|
|
"subsystem": "bdev",
|
|
|
|
"config": [
|
|
|
|
{
|
|
|
|
"method": "bdev_aio_create",
|
|
|
|
"params": {
|
|
|
|
"name": "ai0",
|
|
|
|
"block_size": 512,
|
|
|
|
"filename": "./aio0"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"method": "bdev_aio_create",
|
|
|
|
"params": {
|
|
|
|
"name": "aio1",
|
|
|
|
"block_size": 512,
|
|
|
|
"filename": "./aio1"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
JSON
|
|
|
|
|
2020-05-11 21:15:03 +00:00
|
|
|
"$SPDK_BIN_DIR/iscsi_tgt" --json "$curdir/config" &
|
2019-10-04 15:43:58 +00:00
|
|
|
spdk_pid=$!
|
|
|
|
|
|
|
|
waitforlisten $spdk_pid
|
|
|
|
|
|
|
|
# Create ocf on persistent storage
|
|
|
|
|
2020-05-07 11:27:06 +00:00
|
|
|
$rpc_py bdev_ocf_create ocfWT wt aio0 aio1
|
2019-10-04 15:43:58 +00:00
|
|
|
|
|
|
|
# Check that ocfWT was created properly
|
|
|
|
|
|
|
|
$rpc_py bdev_ocf_get_bdevs | jq -r '.[] .name' | grep -qw ocfWT
|
|
|
|
|
|
|
|
# Remove ocfWT, after delete via rpc ocf bdev should not load on next app start
|
|
|
|
|
|
|
|
$rpc_py bdev_ocf_delete ocfWT
|
|
|
|
|
|
|
|
# Check that ocfWT was deleted properly
|
|
|
|
|
|
|
|
! $rpc_py bdev_ocf_get_bdevs | jq -r '.[] .name' | grep -qw ocfWT
|
|
|
|
|
|
|
|
trap - SIGINT SIGTERM EXIT
|
|
|
|
|
|
|
|
killprocess $spdk_pid
|
|
|
|
|
|
|
|
# Check for ocfWT was deleted permanently
|
2020-05-11 21:15:03 +00:00
|
|
|
"$SPDK_BIN_DIR/iscsi_tgt" --json "$curdir/config" &
|
2019-10-04 15:43:58 +00:00
|
|
|
spdk_pid=$!
|
|
|
|
|
|
|
|
trap 'killprocess $spdk_pid; rm -f aio* $curdir/config ocf_bdevs ocf_bdevs_verify; exit 1' SIGINT SIGTERM EXIT
|
|
|
|
|
|
|
|
waitforlisten $spdk_pid
|
|
|
|
|
|
|
|
# Check that ocfWT was not loaded on app start
|
|
|
|
|
|
|
|
! $rpc_py bdev_ocf_get_bdevs | jq -r '.[] .name' | grep -qw ocfWT
|
|
|
|
|
|
|
|
trap - SIGINT SIGTERM EXIT
|
|
|
|
|
|
|
|
killprocess $spdk_pid
|
|
|
|
rm -f aio* $curdir/config ocf_bdevs ocf_bdevs_verify
|