From 94e47dc62e340818b91c471788c29af3ba167d96 Mon Sep 17 00:00:00 2001 From: Matias Elo Date: Fri, 23 Nov 2018 13:55:55 +0200 Subject: linux-gen: traffic_mngr: don't reserve memory if tm is disabled Signed-off-by: Matias Elo Reviewed-by: Bill Fischofer Signed-off-by: Maxim Uvarov --- platform/linux-generic/odp_traffic_mngr.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'platform/linux-generic/odp_traffic_mngr.c') diff --git a/platform/linux-generic/odp_traffic_mngr.c b/platform/linux-generic/odp_traffic_mngr.c index 2b7e58f70..e29cb3cd6 100644 --- a/platform/linux-generic/odp_traffic_mngr.c +++ b/platform/linux-generic/odp_traffic_mngr.c @@ -2918,6 +2918,11 @@ odp_tm_t odp_tm_create(const char *name, uint32_t max_tm_queues, max_sorted_lists; int rc; + if (odp_global_ro.init_param.not_used.feat.tm) { + ODP_ERR("TM has been disabled\n"); + return ODP_TM_INVALID; + } + /* If we are using pktio output (usual case) get the first associated * pktout_queue for this pktio and fail if there isn't one. */ @@ -4719,6 +4724,11 @@ int odp_tm_init_global(void) { odp_shm_t shm; + if (odp_global_ro.init_param.not_used.feat.tm) { + ODP_DBG("TM disabled\n"); + return 0; + } + shm = odp_shm_reserve("_odp_traffic_mng", sizeof(tm_global_t), 0, 0); if (shm == ODP_SHM_INVALID) return -1; @@ -4747,6 +4757,9 @@ int odp_tm_init_global(void) int odp_tm_term_global(void) { + if (odp_global_ro.init_param.not_used.feat.tm) + return 0; + if (odp_shm_free(tm_glb->shm)) { ODP_ERR("shm free failed\n"); return -1; -- cgit v1.2.3