From c4ecc8b87646e8b3e31c7c2147249a41c90f9794 Mon Sep 17 00:00:00 2001 From: Darek Stojaczyk Date: Tue, 8 Oct 2019 09:10:50 +0000 Subject: [PATCH] app: simplify app start error handling In SPDK applications, spdk_app_start() is always followed by spdk_app_fini(), so remove all global-state cleanup from app_start() and let it be done by app_fini(). Signed-off-by: Darek Stojaczyk Change-Id: Id9fda9fda92f16cc59565691489d4a5ab4c577a5 Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/470735 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Shuhei Matsumoto --- lib/event/app.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/lib/event/app.c b/lib/event/app.c index a4a0ad1eb..3c80cb83a 100644 --- a/lib/event/app.c +++ b/lib/event/app.c @@ -645,13 +645,13 @@ spdk_app_start(struct spdk_app_opts *opts, spdk_msg_fn start_fn, */ if ((rc = spdk_reactors_init()) != 0) { SPDK_ERRLOG("Reactor Initilization failed: rc = %d\n", rc); - goto app_start_log_close_err; + return 1; } tmp_cpumask = spdk_cpuset_alloc(); if (tmp_cpumask == NULL) { SPDK_ERRLOG("spdk_cpuset_alloc() failed\n"); - goto app_start_log_close_err; + return 1; } spdk_cpuset_zero(tmp_cpumask); @@ -663,7 +663,7 @@ spdk_app_start(struct spdk_app_opts *opts, spdk_msg_fn start_fn, spdk_cpuset_free(tmp_cpumask); if (!g_app_thread) { SPDK_ERRLOG("Unable to create an spdk_thread for initialization\n"); - goto app_start_log_close_err; + return 1; } /* @@ -674,11 +674,11 @@ spdk_app_start(struct spdk_app_opts *opts, spdk_msg_fn start_fn, * in spdk_app_setup_signal_handlers(). */ if (spdk_app_setup_trace(opts) != 0) { - goto app_start_log_close_err; + return 1; } if ((rc = spdk_app_setup_signal_handlers(opts)) != 0) { - goto app_start_trace_cleanup_err; + return 1; } g_delay_subsystem_init = opts->delay_subsystem_init; @@ -691,13 +691,6 @@ spdk_app_start(struct spdk_app_opts *opts, spdk_msg_fn start_fn, spdk_reactors_start(); return g_spdk_app.rc; - -app_start_trace_cleanup_err: - spdk_trace_cleanup(); - -app_start_log_close_err: - spdk_log_close(); - return 1; } void