Commit 54f9ed4c authored by Jim Harris's avatar Jim Harris Committed by Konrad Sztyber
Browse files

test: teach autotest_common.sh fns to work with no nvme devices



This allows autorun.sh framework to work when a system has no
nvme devices.

Suggested-by: default avatarMichal Berger <michal.berger@intel.com>
Signed-off-by: default avatarJim Harris <jim.harris@samsung.com>
Change-Id: I663cb4bcfbc11cd299247ff8d4fd771c4d9fcaef
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24820


Reviewed-by: default avatarAleksey Marchuk <alexeymar@nvidia.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarMichal Berger <michal.berger@intel.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
parent 141dc943
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -1521,7 +1521,8 @@ function nvme_namespace_revert() {
	$rootdir/scripts/setup.sh
	sleep 1
	local bdfs=()
	bdfs=($(get_nvme_bdfs))
	# If there are no nvme bdfs, just return immediately
	bdfs=($(get_nvme_bdfs)) || return 0

	$rootdir/scripts/setup.sh reset

@@ -1564,15 +1565,16 @@ function nvme_namespace_revert() {

# Get BDFs based on device ID, such as 0x0a54
function get_nvme_bdfs_by_id() {
	local bdfs=()

	for bdf in $(get_nvme_bdfs); do
	local bdfs=() _bdfs=()
	_bdfs=($(get_nvme_bdfs)) || return 0
	for bdf in "${_bdfs[@]}"; do
		device=$(cat /sys/bus/pci/devices/$bdf/device) || true
		if [[ "$device" == "$1" ]]; then
			bdfs+=($bdf)
		fi
	done

	((${#bdfs[@]} > 0)) || return 0
	printf '%s\n' "${bdfs[@]}"
}