Spdk/test/ocf/common.sh
Tomasz Zawadzki bcf04682f1 test/ocf: do not use iter_pci_class_code in OCF test
See commit msg from db43b387:
"Do not use iter_pci_class_code function in tests to
iterate over NVMe drives. This function can return
drives which at the moment of execution can not be
whitelisted for use.

This can result in test errors (such as simply
bdev_nvme_attach_controller RPC command failing) or
even using and deleting data from NVMe drive which
was not meant to be used in tests."

Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Ifa70a51822f78e95b6cddbfe665ea95ec1b423c1
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/2837
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2020-06-11 19:52:08 +00:00

28 lines
633 B
Bash

source $rootdir/scripts/common.sh
source $rootdir/test/common/autotest_common.sh
rpc_py=$rootdir/scripts/rpc.py
function nvme_cfg() {
if [ -z "$ocf_nvme_cfg" ]; then
ocf_nvme_cfg=$($rootdir/scripts/gen_nvme.sh)
fi
echo "$ocf_nvme_cfg"
}
function clear_nvme() {
mapfile -t bdf < <(get_first_nvme_bdf)
# Clear metadata on NVMe device
$rootdir/scripts/setup.sh reset
sleep 5
name=$(get_nvme_name_from_bdf "${bdf[0]}")
mountpoints=$(lsblk /dev/$name --output MOUNTPOINT -n | wc -w)
if [ "$mountpoints" != "0" ]; then
exit 1
fi
dd if=/dev/zero of=/dev/$name bs=1M count=1000 oflag=direct
$rootdir/scripts/setup.sh
}