event: ignore duplicated shutdown signals if signal received

Change-Id: Ib1e184f831eef82432308279c6d8ea43088748ef
Signed-off-by: Liang Yan <liang.z.yan@intel.com>
Reviewed-on: https://review.gerrithub.io/387273
Reviewed-by: Ziye Yang <optimistyzy@gmail.com>
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
This commit is contained in:
Liang Yan 2017-11-15 17:09:56 +08:00 committed by Daniel Verkamp
parent ed53cba059
commit bb28be8adc

View File

@ -58,6 +58,7 @@ struct spdk_app {
static struct spdk_app g_spdk_app; static struct spdk_app g_spdk_app;
static struct spdk_event *g_shutdown_event = NULL; static struct spdk_event *g_shutdown_event = NULL;
static int g_init_lcore; static int g_init_lcore;
static bool g_shutdown_sig_received = false;
static spdk_event_fn g_app_start_fn; static spdk_event_fn g_app_start_fn;
static void *g_app_start_arg1; static void *g_app_start_arg1;
@ -169,7 +170,10 @@ spdk_app_start_shutdown(void)
static void static void
__shutdown_signal(int signo) __shutdown_signal(int signo)
{ {
spdk_app_start_shutdown(); if (!g_shutdown_sig_received) {
g_shutdown_sig_received = true;
spdk_app_start_shutdown();
}
} }
static void static void