Message ID | 1424793647-28572-8-git-send-email-robking@cisco.com |
---|---|
State | Accepted |
Commit | bb2b041b6ffddf45b45954acc324ddffc689943d |
Headers | show |
diff --git a/platform/linux-generic/include/odp_internal.h b/platform/linux-generic/include/odp_internal.h index c82012d..dad844f 100644 --- a/platform/linux-generic/include/odp_internal.h +++ b/platform/linux-generic/include/odp_internal.h @@ -34,6 +34,7 @@ int odp_system_info_init(void); int odp_thread_init_global(void); int odp_thread_init_local(void); int odp_thread_term_local(void); +int odp_thread_term_global(void); int odp_shm_init_global(void); int odp_shm_init_local(void); diff --git a/platform/linux-generic/odp_init.c b/platform/linux-generic/odp_init.c index b09e9b3..4f2b94a 100644 --- a/platform/linux-generic/odp_init.c +++ b/platform/linux-generic/odp_init.c @@ -108,6 +108,11 @@ int odp_term_global(void) rc = -1; } + if (odp_thread_term_global()) { + ODP_ERR("ODP thread term failed.\n"); + rc = -1; + } + return rc; } diff --git a/platform/linux-generic/odp_thread.c b/platform/linux-generic/odp_thread.c index f6c900b..c6813f5 100644 --- a/platform/linux-generic/odp_thread.c +++ b/platform/linux-generic/odp_thread.c @@ -65,6 +65,17 @@ int odp_thread_init_global(void) return 0; } +int odp_thread_term_global(void) +{ + int ret; + + ret = odp_shm_free(odp_shm_lookup("odp_thread_globals")); + if (ret < 0) + ODP_ERR("shm free failed for odp_thread_globals"); + + return ret; +} + static int thread_id(void) {