bdevperf: Factor out free targets and call app_stop() into bdevperf_fini()

This is a preparation to subsequent patches. They will make start
and stop of bdevperf asynchronous. Encapsulating free targets and
call app_stop() will be helpful for them.

Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Change-Id: I1a86d787614be048cec66e5d5fcfeb85de843ad5
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/478817
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
This commit is contained in:
Shuhei Matsumoto 2019-12-24 23:47:26 -05:00 committed by Tomasz Zawadzki
parent e7a300e096
commit c3aad41fb1

View File

@ -438,6 +438,13 @@ bdevperf_construct_targets(void)
}
}
static void
bdevperf_fini(int rc)
{
bdevperf_free_targets();
spdk_app_stop(rc);
}
static void
end_run(void *arg1, void *arg2)
{
@ -470,8 +477,7 @@ end_run(void *arg1, void *arg2)
if (g_request && !g_shutdown) {
rpc_perform_tests_cb(rc);
} else {
bdevperf_free_targets();
spdk_app_stop(rc);
bdevperf_fini(rc);
}
}
}
@ -1317,8 +1323,7 @@ bdevperf_run(void *arg1)
rc = bdevperf_test();
if (rc) {
bdevperf_free_targets();
spdk_app_stop(1);
bdevperf_fini(1);
return;
}
}
@ -1344,8 +1349,7 @@ spdk_bdevperf_shutdown_cb(void)
g_shutdown = true;
if (g_target_count == 0) {
bdevperf_free_targets();
spdk_app_stop(0);
bdevperf_fini(0);
return;
}