Commit 74606c13 authored by Tomasz Zawadzki's avatar Tomasz Zawadzki
Browse files

test/scheduler: add tests for changes with static scheduler



There are assumptions which scheduler is the default,
or that static can only be switched from, never to.
Verify that.

Signed-off-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: I5c8ac44dc8fe145078d13fe776fdfd5f4f1c5119
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23957


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <jim.harris@samsung.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
parent 494ddd95
Loading
Loading
Loading
Loading
+19 −0
Original line number Diff line number Diff line
@@ -36,4 +36,23 @@ function scheduler_opts() {
	killprocess $spdk_pid
}

function static_as_default() {
	"${SPDK_APP[@]}" -m "$spdk_cpumask" &
	spdk_pid=$!
	trap 'killprocess $spdk_pid; exit 1' SIGINT SIGTERM EXIT
	waitforlisten $spdk_pid

	[[ "$($rpc framework_get_scheduler | jq -r '.scheduler_name')" == "static" ]]

	# It should never be possible to return to static scheduler after changing it
	$rpc framework_set_scheduler dynamic
	[[ "$($rpc framework_get_scheduler | jq -r '.scheduler_name')" == "dynamic" ]]
	NOT $rpc framework_set_scheduler static
	[[ "$($rpc framework_get_scheduler | jq -r '.scheduler_name')" == "dynamic" ]]

	trap - SIGINT SIGTERM EXIT
	killprocess $spdk_pid
}

run_test "scheduler_opts" scheduler_opts
run_test "static_as_default" static_as_default