From: Barry Spinney <[email protected]> This patch adds a call from odp_init.c to _odp_int_name_tbl_init().
Signed-off-by: Barry Spinney <[email protected]> Signed-off-by: Bill Fischofer <[email protected]> --- platform/linux-generic/include/odp_internal.h | 8 ++++++-- .../linux-generic/include/odp_name_table_internal.h | 3 ++- .../linux-generic/include/odp_timer_wheel_internal.h | 3 --- platform/linux-generic/odp_init.c | 19 +++++++++++++++++-- platform/linux-generic/odp_name_table.c | 9 ++++++++- 5 files changed, 33 insertions(+), 9 deletions(-) diff --git a/platform/linux-generic/include/odp_internal.h b/platform/linux-generic/include/odp_internal.h index d7b71ca..b56e85a 100644 --- a/platform/linux-generic/include/odp_internal.h +++ b/platform/linux-generic/include/odp_internal.h @@ -4,7 +4,6 @@ * SPDX-License-Identifier: BSD-3-Clause */ - /** * @file * @@ -55,7 +54,9 @@ enum init_stage { TIMER_INIT = 9, CRYPTO_INIT = 10, CLASSIFICATION_INIT = 11, - ALL_INIT = 12 /* All init stages completed */ + TRAFFIC_MNGR_INIT = 12, + NAME_TABLE_INIT = 13, + ALL_INIT /* All init stages completed */ }; extern struct odp_global_data_s odp_global_data; @@ -107,6 +108,9 @@ int odp_time_term_global(void); int odp_tm_init_global(void); +int _odp_int_name_tbl_init_global(void); +int _odp_int_name_tbl_term_global(void); + void _odp_flush_caches(void); int odp_cpuinfo_parser(FILE *file, odp_system_info_t *sysinfo); diff --git a/platform/linux-generic/include/odp_name_table_internal.h b/platform/linux-generic/include/odp_name_table_internal.h index e9a85da..21ae42d 100644 --- a/platform/linux-generic/include/odp_name_table_internal.h +++ b/platform/linux-generic/include/odp_name_table_internal.h @@ -52,7 +52,8 @@ uint64_t _odp_int_name_tbl_user_data(_odp_int_name_t odp_name); void _odp_int_name_tbl_stats_print(void); -void _odp_int_name_tbl_init(void); +int _odp_int_name_tbl_init_global(void); +int _odp_int_name_tbl_term_global(void); #ifdef __cplusplus } diff --git a/platform/linux-generic/include/odp_timer_wheel_internal.h b/platform/linux-generic/include/odp_timer_wheel_internal.h index 0e5828f..bb98df1 100644 --- a/platform/linux-generic/include/odp_timer_wheel_internal.h +++ b/platform/linux-generic/include/odp_timer_wheel_internal.h @@ -16,9 +16,6 @@ extern "C" { #include <stdint.h> #include <odp_api.h> -/* Note that ALL times in this API are in units of processor/cpu clock - * cycles! - */ typedef uint64_t _odp_timer_wheel_t; #define _ODP_INT_TIMER_WHEEL_INVALID 0 diff --git a/platform/linux-generic/odp_init.c b/platform/linux-generic/odp_init.c index a8c91a5..8d1d32c 100644 --- a/platform/linux-generic/odp_init.c +++ b/platform/linux-generic/odp_init.c @@ -93,7 +93,13 @@ int odp_init_global(const odp_init_t *params, if (odp_tm_init_global()) { ODP_ERR("ODP traffic manager init failed\n"); - return -1; + goto init_failed; + } + stage = TRAFFIC_MNGR_INIT; + + if (_odp_int_name_tbl_init_global()) { + ODP_ERR("ODP name table init failed\n"); + goto init_failed; } return 0; @@ -114,10 +120,19 @@ int _odp_term_global(enum init_stage stage) switch (stage) { case ALL_INIT: + case NAME_TABLE_INIT: + if (_odp_int_name_tbl_term_global()) { + ODP_ERR("Name table term failed.\n"); + rc = -1; + } + /* Fall through */ + + case TRAFFIC_MNGR_INIT: + /* Fall through */ case CLASSIFICATION_INIT: if (odp_classification_term_global()) { - ODP_ERR("ODP classificatio term failed.\n"); + ODP_ERR("ODP classification term failed.\n"); rc = -1; } /* Fall through */ diff --git a/platform/linux-generic/odp_name_table.c b/platform/linux-generic/odp_name_table.c index 610f034..1e43a2c 100644 --- a/platform/linux-generic/odp_name_table.c +++ b/platform/linux-generic/odp_name_table.c @@ -1181,7 +1181,7 @@ void _odp_int_name_tbl_stats_print(void) #endif } -void _odp_int_name_tbl_init(void) +int _odp_int_name_tbl_init_global(void) { name_tbl_t *new_name_tbl; @@ -1196,4 +1196,11 @@ void _odp_int_name_tbl_init(void) name_tbls.avail_space_bit_mask |= 1; name_tbls.num_name_tbls = 1; name_tbls_initialized = 1; + + return 0; +} + +int _odp_int_name_tbl_term_global(void) +{ + return 0; } -- 2.5.0 _______________________________________________ lng-odp mailing list [email protected] https://lists.linaro.org/mailman/listinfo/lng-odp
