As per API documentation, odp_term_global() should be a final ODP call
when terminating the ODP application in a controlled way. Therefore ODP
threads or sub-processes created using ODP helper API should not call
this function but leave it to the main application thread/process.

Signed-off-by: Stanislaw Kardach <[email protected]>
---
 helper/linux.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/helper/linux.c b/helper/linux.c
index 7bd0b07..1f009cd 100644
--- a/helper/linux.c
+++ b/helper/linux.c
@@ -42,8 +42,6 @@ static void *odp_run_start_routine(void *arg)

        if (ret < 0)
                ODPH_ERR("Local term failed\n");
-       else if (ret == 0 && odp_term_global(thr_params->instance))
-               ODPH_ERR("Global term failed\n");

        return ret_ptr;
 }
@@ -277,8 +275,6 @@ static void *odpthread_run_start_routine(void *arg)

        if (ret < 0)
                ODPH_ERR("Local term failed\n");
-       else if (ret == 0 && odp_term_global(thr_params->instance))
-               ODPH_ERR("Global term failed\n");

        /* for process implementation of odp threads, just return status... */
        if (start_args->linuxtype == ODPTHREAD_PROCESS)
--
2.7.4

Reply via email to