diff --git a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_pdev_obj.h b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_pdev_obj.h index 95dce8d49a76..d9007723e05a 100644 --- a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_pdev_obj.h +++ b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_pdev_obj.h @@ -706,7 +706,7 @@ static inline uint8_t wlan_pdev_get_max_vdev_count( * * Return: void */ -QDF_STATUS wlan_objmgr_pdev_get_ref(struct wlan_objmgr_pdev *pdev, +void wlan_objmgr_pdev_get_ref(struct wlan_objmgr_pdev *pdev, wlan_objmgr_ref_dbgid id); /** @@ -731,7 +731,7 @@ QDF_STATUS wlan_objmgr_pdev_try_get_ref(struct wlan_objmgr_pdev *pdev, * * Return: void */ -QDF_STATUS wlan_objmgr_pdev_release_ref(struct wlan_objmgr_pdev *pdev, +void wlan_objmgr_pdev_release_ref(struct wlan_objmgr_pdev *pdev, wlan_objmgr_ref_dbgid id); /** diff --git a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_peer_obj.h b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_peer_obj.h index 675bd9261e67..78e8a869617e 100644 --- a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_peer_obj.h +++ b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_peer_obj.h @@ -374,7 +374,7 @@ static inline void wlan_peer_obj_unlock(struct wlan_objmgr_peer *peer) * * Return: void */ -QDF_STATUS wlan_objmgr_peer_get_ref(struct wlan_objmgr_peer *peer, +void wlan_objmgr_peer_get_ref(struct wlan_objmgr_peer *peer, wlan_objmgr_ref_dbgid id); /** @@ -399,7 +399,7 @@ QDF_STATUS wlan_objmgr_peer_try_get_ref(struct wlan_objmgr_peer *peer, * * Return: void */ -QDF_STATUS wlan_objmgr_peer_release_ref(struct wlan_objmgr_peer *peer, +void wlan_objmgr_peer_release_ref(struct wlan_objmgr_peer *peer, wlan_objmgr_ref_dbgid id); /** diff --git a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h index 3ebacbc18f89..97e8be99a6a8 100644 --- a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h +++ b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_psoc_obj.h @@ -1181,7 +1181,7 @@ static inline void wlan_psoc_set_qdf_dev( * * Return: void */ -QDF_STATUS wlan_objmgr_psoc_get_ref(struct wlan_objmgr_psoc *psoc, +void wlan_objmgr_psoc_get_ref(struct wlan_objmgr_psoc *psoc, wlan_objmgr_ref_dbgid id); /** @@ -1206,7 +1206,7 @@ QDF_STATUS wlan_objmgr_psoc_try_get_ref(struct wlan_objmgr_psoc *psoc, * * Return: void */ -QDF_STATUS wlan_objmgr_psoc_release_ref(struct wlan_objmgr_psoc *psoc, +void wlan_objmgr_psoc_release_ref(struct wlan_objmgr_psoc *psoc, wlan_objmgr_ref_dbgid id); /** diff --git a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_vdev_obj.h b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_vdev_obj.h index 1ca75bbff10d..17ac88347c75 100644 --- a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_vdev_obj.h +++ b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_vdev_obj.h @@ -1391,7 +1391,7 @@ static inline uint16_t wlan_vdev_get_peer_count(struct wlan_objmgr_vdev *vdev) * * Return: void */ -QDF_STATUS wlan_objmgr_vdev_get_ref(struct wlan_objmgr_vdev *vdev, +void wlan_objmgr_vdev_get_ref(struct wlan_objmgr_vdev *vdev, wlan_objmgr_ref_dbgid id); /** @@ -1416,7 +1416,7 @@ QDF_STATUS wlan_objmgr_vdev_try_get_ref(struct wlan_objmgr_vdev *vdev, * * Return: void */ -QDF_STATUS wlan_objmgr_vdev_release_ref(struct wlan_objmgr_vdev *vdev, +void wlan_objmgr_vdev_release_ref(struct wlan_objmgr_vdev *vdev, wlan_objmgr_ref_dbgid id); /** diff --git a/umac/cmn_services/obj_mgr/src/wlan_objmgr_global_obj.c b/umac/cmn_services/obj_mgr/src/wlan_objmgr_global_obj.c index 56fd7a86957e..3570dbed2986 100644 --- a/umac/cmn_services/obj_mgr/src/wlan_objmgr_global_obj.c +++ b/umac/cmn_services/obj_mgr/src/wlan_objmgr_global_obj.c @@ -101,8 +101,7 @@ QDF_STATUS wlan_objmgr_register_psoc_create_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->psoc_create_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -129,8 +128,7 @@ QDF_STATUS wlan_objmgr_unregister_psoc_create_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->psoc_create_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -157,8 +155,7 @@ QDF_STATUS wlan_objmgr_register_psoc_destroy_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->psoc_destroy_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -185,8 +182,7 @@ QDF_STATUS wlan_objmgr_unregister_psoc_destroy_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->psoc_destroy_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -213,8 +209,7 @@ QDF_STATUS wlan_objmgr_register_psoc_status_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->psoc_status_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); return QDF_STATUS_E_FAILURE; } /* Store handler and args in Global object table */ @@ -239,8 +234,7 @@ QDF_STATUS wlan_objmgr_unregister_psoc_status_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->psoc_status_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); return QDF_STATUS_E_FAILURE; } /* Reset handlers, and args to NULL */ @@ -266,8 +260,7 @@ QDF_STATUS wlan_objmgr_register_pdev_create_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->pdev_create_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -294,8 +287,7 @@ QDF_STATUS wlan_objmgr_unregister_pdev_create_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->pdev_create_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -322,8 +314,7 @@ QDF_STATUS wlan_objmgr_register_pdev_destroy_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->pdev_destroy_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -350,8 +341,7 @@ QDF_STATUS wlan_objmgr_unregister_pdev_destroy_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->pdev_destroy_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for Component %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -378,8 +368,7 @@ QDF_STATUS wlan_objmgr_register_pdev_status_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->pdev_status_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); return QDF_STATUS_E_FAILURE; } /* Store handler and args in Global object table */ @@ -404,8 +393,7 @@ QDF_STATUS wlan_objmgr_unregister_pdev_status_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->pdev_status_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for Component %d is not registered", id); return QDF_STATUS_E_FAILURE; } /* Reset handlers, and args to NULL */ @@ -431,8 +419,7 @@ QDF_STATUS wlan_objmgr_register_vdev_create_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->vdev_create_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -458,8 +445,7 @@ QDF_STATUS wlan_objmgr_unregister_vdev_create_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->vdev_create_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -485,8 +471,7 @@ QDF_STATUS wlan_objmgr_register_vdev_destroy_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->vdev_destroy_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -512,8 +497,7 @@ QDF_STATUS wlan_objmgr_unregister_vdev_destroy_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->vdev_destroy_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -539,8 +523,7 @@ QDF_STATUS wlan_objmgr_register_vdev_status_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->vdev_status_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); return QDF_STATUS_E_FAILURE; } /* Store handler and args in Global object table */ @@ -565,8 +548,7 @@ QDF_STATUS wlan_objmgr_unregister_vdev_status_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->vdev_status_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for Component %d is not registered", id); return QDF_STATUS_E_FAILURE; } /* Reset handlers, and args to NULL */ @@ -592,8 +574,7 @@ QDF_STATUS wlan_objmgr_register_peer_create_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->peer_create_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -620,8 +601,7 @@ QDF_STATUS wlan_objmgr_unregister_peer_create_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->peer_create_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -647,8 +627,7 @@ QDF_STATUS wlan_objmgr_register_peer_destroy_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->peer_destroy_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -674,8 +653,7 @@ QDF_STATUS wlan_objmgr_unregister_peer_destroy_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->peer_destroy_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -701,8 +679,7 @@ QDF_STATUS wlan_objmgr_register_peer_status_handler( /* If there is a valid entry, return failure */ if (g_umac_glb_obj->peer_status_handler[id] != NULL) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is already registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is already registered", id); return QDF_STATUS_E_FAILURE; } /* Store handler and args in Global object table */ @@ -727,8 +704,7 @@ QDF_STATUS wlan_objmgr_unregister_peer_status_handler( /* If there is an invalid entry, return failure */ if (g_umac_glb_obj->peer_status_handler[id] != handler) { qdf_spin_unlock_bh(&g_umac_glb_obj->global_lock); - obj_mgr_err("Callback for comp %s is not registered", - string_from_dbgid(id)); + obj_mgr_err("Callback for comp %d is not registered", id); return QDF_STATUS_E_FAILURE; } /* Reset handlers, and args to NULL */ diff --git a/umac/cmn_services/obj_mgr/src/wlan_objmgr_pdev_obj.c b/umac/cmn_services/obj_mgr/src/wlan_objmgr_pdev_obj.c index 19cae9977ae1..6a9a1d146943 100644 --- a/umac/cmn_services/obj_mgr/src/wlan_objmgr_pdev_obj.c +++ b/umac/cmn_services/obj_mgr/src/wlan_objmgr_pdev_obj.c @@ -70,7 +70,7 @@ static QDF_STATUS wlan_objmgr_pdev_obj_free(struct wlan_objmgr_pdev *pdev) uint8_t pdev_id; if (pdev == NULL) { - obj_mgr_err("pdev is NULL"); + obj_mgr_err("pdev obj is NULL"); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -80,7 +80,7 @@ static QDF_STATUS wlan_objmgr_pdev_obj_free(struct wlan_objmgr_pdev *pdev) /* Detach PDEV from PSOC PDEV's list */ if (wlan_objmgr_psoc_pdev_detach(pdev->pdev_objmgr.wlan_psoc, pdev) == QDF_STATUS_E_FAILURE) { - obj_mgr_err("psoc detach failed for pdev[%d]", pdev_id); + obj_mgr_err("PSOC PDEV detach failed: pdev-id: %d", pdev_id); return QDF_STATUS_E_FAILURE; } qdf_spinlock_destroy(&pdev->pdev_lock); @@ -113,7 +113,7 @@ struct wlan_objmgr_pdev *wlan_objmgr_pdev_obj_create( /* Attach PDEV with PSOC */ if (wlan_objmgr_psoc_pdev_attach(psoc, pdev) != QDF_STATUS_SUCCESS) { - obj_mgr_err("psoc attach failed for pdev"); + obj_mgr_err("pdev psoc attach failed"); qdf_mem_free(pdev); return NULL; } @@ -164,9 +164,7 @@ struct wlan_objmgr_pdev *wlan_objmgr_pdev_obj_create( /* Component object failed to be created, clean up the object */ } else if (obj_status == QDF_STATUS_E_FAILURE) { /* Clean up the psoc */ - obj_mgr_err( - "Component objects allocation failed for pdev[%d]", - wlan_objmgr_pdev_get_pdev_id(pdev)); + obj_mgr_err("PDEV component objects allocation failed"); wlan_objmgr_pdev_obj_delete(pdev); return NULL; } @@ -190,7 +188,7 @@ static QDF_STATUS wlan_objmgr_pdev_obj_destroy(struct wlan_objmgr_pdev *pdev) pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev); if (pdev->obj_state != WLAN_OBJ_STATE_LOGICALLY_DELETED) { - obj_mgr_err("Object delete is not invoked for pdev[%d]", + obj_mgr_err("pdev object delete is not invoked: pdev-id:%d", pdev_id); WLAN_OBJMGR_BUG(0); } @@ -208,11 +206,11 @@ static QDF_STATUS wlan_objmgr_pdev_obj_destroy(struct wlan_objmgr_pdev *pdev) obj_status = wlan_objmgr_pdev_object_status(pdev); if (obj_status == QDF_STATUS_E_FAILURE) { - obj_mgr_err("Component objects destroy failed for pdev[%d]", + obj_mgr_err("PDEV component objects destroy failed: pdev-id:%d", pdev_id); /* Ideally should not happen */ /* This leads to memleak ??? how to handle */ - WLAN_OBJMGR_BUG(0); + QDF_BUG(0); return QDF_STATUS_E_FAILURE; } /* Deletion is in progress */ @@ -237,7 +235,7 @@ QDF_STATUS wlan_objmgr_pdev_obj_delete(struct wlan_objmgr_pdev *pdev) print_idx = qdf_get_pidx(); if (qdf_print_is_verbose_enabled(print_idx, QDF_MODULE_ID_OBJ_MGR, QDF_TRACE_LEVEL_DEBUG)) { - obj_mgr_debug("L-Del pdev[%d]", + obj_mgr_debug("Logically deleting the pdev(id:%d)", pdev->pdev_objmgr.wlan_pdev_id); wlan_objmgr_print_ref_ids(pdev->pdev_objmgr.ref_id_dbg); } @@ -271,14 +269,13 @@ QDF_STATUS wlan_objmgr_pdev_component_obj_attach( /* component id is invalid */ if (id >= WLAN_UMAC_MAX_COMPONENTS) { - obj_mgr_err("Component-id %d is not supported", id); + obj_mgr_err("component-id %d is not supported", id); return QDF_STATUS_MAXCOMP_FAIL; } wlan_pdev_obj_lock(pdev); /* If there is a valid entry, return failure */ if (pdev->pdev_comp_priv_obj[id] != NULL) { - obj_mgr_err("Component-%s already have valid pointer", - string_from_dbgid(id)); + obj_mgr_err("component-%d already have valid pointer", id); wlan_pdev_obj_unlock(pdev); return QDF_STATUS_E_FAILURE; } @@ -784,12 +781,12 @@ void *wlan_objmgr_pdev_get_comp_private_obj( /* component id is invalid */ if (id >= WLAN_UMAC_MAX_COMPONENTS) { - WLAN_OBJMGR_BUG(0); + QDF_BUG(0); return NULL; } if (pdev == NULL) { - WLAN_OBJMGR_BUG(0); + QDF_BUG(0); return NULL; } @@ -799,23 +796,18 @@ void *wlan_objmgr_pdev_get_comp_private_obj( } EXPORT_SYMBOL(wlan_objmgr_pdev_get_comp_private_obj); -QDF_STATUS wlan_objmgr_pdev_get_ref(struct wlan_objmgr_pdev *pdev, +void wlan_objmgr_pdev_get_ref(struct wlan_objmgr_pdev *pdev, wlan_objmgr_ref_dbgid id) { - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (pdev == NULL) { - obj_mgr_err("pdev is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("pdev obj is NULL"); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } qdf_atomic_inc(&pdev->pdev_objmgr.ref_cnt); qdf_atomic_inc(&pdev->pdev_objmgr.ref_id_dbg[id]); - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_pdev_get_ref); @@ -824,13 +816,8 @@ QDF_STATUS wlan_objmgr_pdev_try_get_ref(struct wlan_objmgr_pdev *pdev, { uint8_t pdev_id; - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (pdev == NULL) { - obj_mgr_err("pdev is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("pdev obj is NULL"); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -841,8 +828,8 @@ QDF_STATUS wlan_objmgr_pdev_try_get_ref(struct wlan_objmgr_pdev *pdev, wlan_pdev_obj_unlock(pdev); if (pdev->pdev_objmgr.print_cnt++ <= WLAN_OBJMGR_RATELIMIT_THRESH) - obj_mgr_err("[Ref id: %s] pdev[%d] is in L-Del state", - string_from_dbgid(id), pdev_id); + obj_mgr_err("[Ref id: %d] pdev [%d] is in L-Del state", + id, pdev_id); return QDF_STATUS_E_RESOURCES; } @@ -854,35 +841,30 @@ QDF_STATUS wlan_objmgr_pdev_try_get_ref(struct wlan_objmgr_pdev *pdev, } EXPORT_SYMBOL(wlan_objmgr_pdev_try_get_ref); -QDF_STATUS wlan_objmgr_pdev_release_ref(struct wlan_objmgr_pdev *pdev, +void wlan_objmgr_pdev_release_ref(struct wlan_objmgr_pdev *pdev, wlan_objmgr_ref_dbgid id) { uint8_t pdev_id; - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (pdev == NULL) { - obj_mgr_err("pdev is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("pdev obj is NULL"); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev); if (!qdf_atomic_read(&pdev->pdev_objmgr.ref_id_dbg[id])) { - obj_mgr_err("pdev[%d] ref cnt was not taken by %s", - pdev_id, string_from_dbgid(id)); + obj_mgr_err("pdev (id:%d)ref cnt was not taken by %d", + pdev_id, id); wlan_objmgr_print_ref_ids(pdev->pdev_objmgr.ref_id_dbg); WLAN_OBJMGR_BUG(0); } if (!qdf_atomic_read(&pdev->pdev_objmgr.ref_cnt)) { - obj_mgr_err("pdev[%d] ref cnt is 0", pdev_id); + obj_mgr_err("pdev ref cnt is 0: pdev-id:%d", pdev_id); WLAN_OBJMGR_BUG(0); - return QDF_STATUS_E_FAILURE; + return; } qdf_atomic_dec(&pdev->pdev_objmgr.ref_id_dbg[id]); @@ -890,6 +872,6 @@ QDF_STATUS wlan_objmgr_pdev_release_ref(struct wlan_objmgr_pdev *pdev, if (qdf_atomic_dec_and_test(&pdev->pdev_objmgr.ref_cnt)) wlan_objmgr_pdev_obj_destroy(pdev); - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_pdev_release_ref); diff --git a/umac/cmn_services/obj_mgr/src/wlan_objmgr_peer_obj.c b/umac/cmn_services/obj_mgr/src/wlan_objmgr_peer_obj.c index b3328cf75491..b0f8c4a365f4 100644 --- a/umac/cmn_services/obj_mgr/src/wlan_objmgr_peer_obj.c +++ b/umac/cmn_services/obj_mgr/src/wlan_objmgr_peer_obj.c @@ -69,30 +69,34 @@ static QDF_STATUS wlan_objmgr_peer_obj_free(struct wlan_objmgr_peer *peer) { struct wlan_objmgr_psoc *psoc; struct wlan_objmgr_vdev *vdev; - struct wlan_objmgr_pdev *pdev; uint8_t *macaddr; + uint8_t vdev_id; if (peer == NULL) { - obj_mgr_err("peer is NULL"); + obj_mgr_err("PEER is NULL"); return QDF_STATUS_E_FAILURE; } - wlan_peer_obj_lock(peer); macaddr = wlan_peer_get_macaddr(peer); - wlan_peer_obj_unlock(peer); vdev = wlan_peer_get_vdev(peer); if (vdev == NULL) { - obj_mgr_err("vdev is NULL for peer(%pM)", macaddr); + obj_mgr_err( + "VDEV is NULL for peer(%02x:%02x:%02x:%02x:%02x:%02x)", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); return QDF_STATUS_E_FAILURE; } + vdev_id = wlan_vdev_get_id(vdev); + /* get PSOC from VDEV, if it is NULL, return */ psoc = wlan_vdev_get_psoc(vdev); if (psoc == NULL) { obj_mgr_err( - "psoc is NULL for peer(%pM) for vdev[%d]", - macaddr, wlan_vdev_get_id(vdev)); + "PSOC is NULL for peer(%02x:%02x:%02x:%02x:%02x:%02x)", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); return QDF_STATUS_E_FAILURE; } @@ -104,28 +108,18 @@ static QDF_STATUS wlan_objmgr_peer_obj_free(struct wlan_objmgr_peer *peer) /* Detach peer from VDEV's peer list */ if (wlan_objmgr_vdev_peer_detach(vdev, peer) == QDF_STATUS_E_FAILURE) { - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("peer(%pM) pdev is NULL", macaddr); - return QDF_STATUS_E_FAILURE; - } obj_mgr_err( - "peer(%pM) vdev detach failure for vdev[%d] pdev[%d]", - macaddr, wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + "Peer(%02x:%02x:%02x:%02x:%02x:%02x) VDEV detach fail, vdev id: %d", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5], vdev_id); return QDF_STATUS_E_FAILURE; } /* Detach peer from PSOC's peer list */ if (wlan_objmgr_psoc_peer_detach(psoc, peer) == QDF_STATUS_E_FAILURE) { - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("peer(%pM) pdev is NULL", macaddr); - return QDF_STATUS_E_FAILURE; - } obj_mgr_err( - "peer(%pM) psoc detach failure for vdev[%d] pdev[%d]", - macaddr, wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + "Peer(%02x:%02x:%02x:%02x:%02x:%02x) PSOC detach failure", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); return QDF_STATUS_E_FAILURE; } qdf_spinlock_destroy(&peer->peer_lock); @@ -150,20 +144,27 @@ struct wlan_objmgr_peer *wlan_objmgr_peer_obj_create( if (vdev == NULL) { obj_mgr_err( - "vdev is NULL for peer (%pM)", macaddr); + "VDEV is NULL for peer (%02x:%02x:%02x:%02x:%02x:%02x)", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); return NULL; } /* Get psoc, if psoc is NULL, return */ psoc = wlan_vdev_get_psoc(vdev); if (psoc == NULL) { obj_mgr_err( - "psoc is NULL for peer (%pM)", macaddr); + "PSOC is NULL for peer (%02x:%02x:%02x:%02x:%02x:%02x)", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); return NULL; } /* Allocate memory for peer object */ peer = qdf_mem_malloc(sizeof(*peer)); if (peer == NULL) { - obj_mgr_err("peer(%pM) allocation failure", macaddr); + obj_mgr_err( + "Peer(%02x:%02x:%02x:%02x:%02x:%02x) allocation failure", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); return NULL; } /* set vdev to peer */ @@ -180,14 +181,20 @@ struct wlan_objmgr_peer *wlan_objmgr_peer_obj_create( /* Attach peer to psoc, psoc maintains the node table for the device */ if (wlan_objmgr_psoc_peer_attach(psoc, peer) != QDF_STATUS_SUCCESS) { - obj_mgr_err("peer(%pM) psoc attach failure", macaddr); + obj_mgr_err( + "Peer(%02x:%02x:%02x:%02x:%02x:%02x) PSOC attach failure", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); qdf_mem_free(peer); return NULL; } /* Attach peer to vdev peer table */ if (wlan_objmgr_vdev_peer_attach(vdev, peer) != QDF_STATUS_SUCCESS) { - obj_mgr_err("peer(%pM) vdev attach failure", macaddr); + obj_mgr_err( + "Peer(%02x:%02x:%02x:%02x:%02x:%02x) VDEV attach failure", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); /* if attach fails, detach from psoc table before free */ wlan_objmgr_psoc_peer_detach(psoc, peer); qdf_mem_free(peer); @@ -229,7 +236,9 @@ struct wlan_objmgr_peer *wlan_objmgr_peer_obj_create( } else if (obj_status == QDF_STATUS_E_FAILURE) { /* Clean up the peer */ obj_mgr_err( - "peer(%pM) component object alloc failure", macaddr); + "Peer(%02x:%02x:%02x:%02x:%02x:%02x) comp object alloc fail", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); wlan_objmgr_peer_obj_delete(peer); return NULL; } @@ -245,33 +254,17 @@ static QDF_STATUS wlan_objmgr_peer_obj_destroy(struct wlan_objmgr_peer *peer) uint8_t *macaddr; if (peer == NULL) { - obj_mgr_err("peer is NULL"); + obj_mgr_err("PEER is NULL"); return QDF_STATUS_E_FAILURE; } - wlan_peer_obj_lock(peer); macaddr = wlan_peer_get_macaddr(peer); - wlan_peer_obj_unlock(peer); if (peer->obj_state != WLAN_OBJ_STATE_LOGICALLY_DELETED) { - struct wlan_objmgr_vdev *vdev; - struct wlan_objmgr_pdev *pdev; - - vdev = wlan_peer_get_vdev(peer); - if (vdev == NULL) { - obj_mgr_err("vdev is NULL for peer(%pM)", macaddr); - return QDF_STATUS_E_FAILURE; - } - - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("peer(%pM) pdev is NULL", macaddr); - return QDF_STATUS_E_FAILURE; - } - - obj_mgr_err("peer(%pM) vdev[%d] pdev[%d] delete is not invoked", - macaddr, wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + obj_mgr_err( + "peer(%02x:%02x:%02x:%02x:%02x:%02x) object del is not invoked", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); WLAN_OBJMGR_BUG(0); } @@ -288,7 +281,8 @@ static QDF_STATUS wlan_objmgr_peer_obj_destroy(struct wlan_objmgr_peer *peer) obj_status = wlan_objmgr_peer_object_status(peer); if (obj_status == QDF_STATUS_E_FAILURE) { /* If it status is failure, memory will not be freed */ - WLAN_OBJMGR_BUG(0); + QDF_BUG(0); + return QDF_STATUS_E_FAILURE; } /* few components deletion is in progress */ if (obj_status == QDF_STATUS_COMP_ASYNC) { @@ -306,7 +300,7 @@ QDF_STATUS wlan_objmgr_peer_obj_delete(struct wlan_objmgr_peer *peer) uint8_t *macaddr; if (peer == NULL) { - obj_mgr_err("peer is NULL"); + obj_mgr_err("PEER is NULL"); return QDF_STATUS_E_FAILURE; } @@ -314,27 +308,14 @@ QDF_STATUS wlan_objmgr_peer_obj_delete(struct wlan_objmgr_peer *peer) macaddr = wlan_peer_get_macaddr(peer); wlan_peer_obj_unlock(peer); + print_idx = qdf_get_pidx(); if (qdf_print_is_verbose_enabled(print_idx, QDF_MODULE_ID_OBJ_MGR, QDF_TRACE_LEVEL_DEBUG)) { - struct wlan_objmgr_vdev *vdev; - struct wlan_objmgr_pdev *pdev; - - vdev = wlan_peer_get_vdev(peer); - if (!vdev) { - obj_mgr_err("vdev is NULL for peer(%pM)", macaddr); - return QDF_STATUS_E_FAILURE; - } - - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("peer(%pM) pdev is NULL", macaddr); - return QDF_STATUS_E_FAILURE; - } - - obj_mgr_debug("L-Del peer (%pM) for vdev[%d] pdev[%d]", - macaddr, wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + obj_mgr_debug( + "Logically deleting the peer (%02x:%02x:%02x:%02x:%02x:%02x)", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); wlan_objmgr_print_ref_ids(peer->peer_objmgr.ref_id_dbg); } @@ -579,24 +560,19 @@ void *wlan_objmgr_peer_get_comp_private_obj( } EXPORT_SYMBOL(wlan_objmgr_peer_get_comp_private_obj); -QDF_STATUS wlan_objmgr_peer_get_ref(struct wlan_objmgr_peer *peer, +void wlan_objmgr_peer_get_ref(struct wlan_objmgr_peer *peer, wlan_objmgr_ref_dbgid id) { - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (peer == NULL) { - obj_mgr_err("peer is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("peer obj is NULL for %d", id); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } /* Increment ref count */ qdf_atomic_inc(&peer->peer_objmgr.ref_cnt); qdf_atomic_inc(&peer->peer_objmgr.ref_id_dbg[id]); - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_peer_get_ref); @@ -606,13 +582,8 @@ QDF_STATUS wlan_objmgr_peer_try_get_ref(struct wlan_objmgr_peer *peer, uint8_t *macaddr; - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (peer == NULL) { - obj_mgr_err("peer is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("peer obj is NULL for %d", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -622,9 +593,12 @@ QDF_STATUS wlan_objmgr_peer_try_get_ref(struct wlan_objmgr_peer *peer, if (peer->obj_state == WLAN_OBJ_STATE_LOGICALLY_DELETED) { wlan_peer_obj_unlock(peer); if (peer->peer_objmgr.print_cnt++ <= - WLAN_OBJMGR_RATELIMIT_THRESH) - obj_mgr_err("peer(%pM) is in L-Del state", macaddr); - return QDF_STATUS_E_RESOURCES; + WLAN_OBJMGR_RATELIMIT_THRESH) + obj_mgr_err("peer(%02x:%02x:%02x:%02x:%02x:%02x) L-Del", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); + + return QDF_STATUS_E_RESOURCES; } wlan_objmgr_peer_get_ref(peer, id); @@ -634,37 +608,35 @@ QDF_STATUS wlan_objmgr_peer_try_get_ref(struct wlan_objmgr_peer *peer, } EXPORT_SYMBOL(wlan_objmgr_peer_try_get_ref); -QDF_STATUS wlan_objmgr_peer_release_ref(struct wlan_objmgr_peer *peer, +void wlan_objmgr_peer_release_ref(struct wlan_objmgr_peer *peer, wlan_objmgr_ref_dbgid id) { uint8_t *macaddr; - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (peer == NULL) { - obj_mgr_err("peer is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("peer obj is NULL for %d", id); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } - wlan_peer_obj_lock(peer); macaddr = wlan_peer_get_macaddr(peer); - wlan_peer_obj_unlock(peer); if (!qdf_atomic_read(&peer->peer_objmgr.ref_id_dbg[id])) { - obj_mgr_err("peer(%pM) ref cnt was not taken by %s", - macaddr, string_from_dbgid(id)); + obj_mgr_err( + "peer(%02x:%02x:%02x:%02x:%02x:%02x) ref was not taken by %d", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5], id); wlan_objmgr_print_ref_ids(peer->peer_objmgr.ref_id_dbg); WLAN_OBJMGR_BUG(0); } if (!qdf_atomic_read(&peer->peer_objmgr.ref_cnt)) { - obj_mgr_err("peer(%pM) ref cnt is 0", macaddr); + obj_mgr_err("peer(%02x:%02x:%02x:%02x:%02x:%02x) ref cnt is 0", + macaddr[0], macaddr[1], macaddr[2], + macaddr[3], macaddr[4], macaddr[5]); WLAN_OBJMGR_BUG(0); + return; } qdf_atomic_dec(&peer->peer_objmgr.ref_id_dbg[id]); @@ -680,6 +652,6 @@ QDF_STATUS wlan_objmgr_peer_release_ref(struct wlan_objmgr_peer *peer, wlan_peer_obj_unlock(peer); } - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_peer_release_ref); diff --git a/umac/cmn_services/obj_mgr/src/wlan_objmgr_psoc_obj.c b/umac/cmn_services/obj_mgr/src/wlan_objmgr_psoc_obj.c index 2a08ff33021f..cc45ad82205c 100644 --- a/umac/cmn_services/obj_mgr/src/wlan_objmgr_psoc_obj.c +++ b/umac/cmn_services/obj_mgr/src/wlan_objmgr_psoc_obj.c @@ -95,7 +95,7 @@ static QDF_STATUS wlan_objmgr_psoc_obj_free(struct wlan_objmgr_psoc *psoc) /* Detach PSOC from global object's psoc list */ if (wlan_objmgr_psoc_object_detach(psoc) == QDF_STATUS_E_FAILURE) { - obj_mgr_err("psoc detach failed"); + obj_mgr_err("PSOC object detach failed"); return QDF_STATUS_E_FAILURE; } wlan_objmgr_psoc_peer_list_deinit(&psoc->soc_objmgr.peer_list); @@ -120,7 +120,7 @@ struct wlan_objmgr_psoc *wlan_objmgr_psoc_obj_create(uint32_t phy_version, psoc = qdf_mem_malloc(sizeof(*psoc)); if (psoc == NULL) { - obj_mgr_err("psoc allocation failed"); + obj_mgr_err("PSOC allocation failed"); return NULL; } qdf_spinlock_create(&psoc->psoc_lock); @@ -168,7 +168,7 @@ struct wlan_objmgr_psoc *wlan_objmgr_psoc_obj_create(uint32_t phy_version, psoc->obj_state = WLAN_OBJ_STATE_PARTIALLY_CREATED; } else if (obj_status == QDF_STATUS_E_FAILURE) { /* Component object failed to be created, clean up the object */ - obj_mgr_err("psoc component objects allocation failed"); + obj_mgr_err("PSOC component objects allocation failed"); /* Clean up the psoc */ wlan_objmgr_psoc_obj_delete(psoc); return NULL; @@ -176,7 +176,7 @@ struct wlan_objmgr_psoc *wlan_objmgr_psoc_obj_create(uint32_t phy_version, if (wlan_objmgr_psoc_object_attach(psoc) != QDF_STATUS_SUCCESS) { - obj_mgr_err("psoc object attach failed"); + obj_mgr_err("PSOC object attach failed"); wlan_objmgr_psoc_obj_delete(psoc); return NULL; } @@ -215,7 +215,7 @@ static QDF_STATUS wlan_objmgr_psoc_obj_destroy(struct wlan_objmgr_psoc *psoc) obj_status = wlan_objmgr_psoc_object_status(psoc); if (obj_status == QDF_STATUS_E_FAILURE) { - obj_mgr_err("psoc component object free failed"); + obj_mgr_err("PSOC component object free failed"); /* Ideally should not happen * This leads to memleak, BUG_ON to find which component * delete notification failed and fix it. @@ -247,7 +247,7 @@ QDF_STATUS wlan_objmgr_psoc_obj_delete(struct wlan_objmgr_psoc *psoc) if (qdf_print_is_verbose_enabled(print_idx, QDF_MODULE_ID_OBJ_MGR, QDF_TRACE_LEVEL_DEBUG)) { - obj_mgr_debug("L-Del psoc"); + obj_mgr_debug("Logically deleting the psoc"); wlan_objmgr_print_ref_ids(psoc->soc_objmgr.ref_id_dbg); } @@ -1402,7 +1402,7 @@ QDF_STATUS wlan_objmgr_psoc_peer_detach(struct wlan_objmgr_psoc *psoc, QDF_STATUS_E_FAILURE) { qdf_spin_unlock_bh(&peer_list->peer_list_lock); wlan_psoc_obj_unlock(psoc); - obj_mgr_err("psoc failed to detach peer"); + obj_mgr_err("Failed to detach peer"); return QDF_STATUS_E_FAILURE; } qdf_spin_unlock_bh(&peer_list->peer_list_lock); @@ -1669,35 +1669,26 @@ void *wlan_objmgr_psoc_get_comp_private_obj(struct wlan_objmgr_psoc *psoc, } EXPORT_SYMBOL(wlan_objmgr_psoc_get_comp_private_obj); -QDF_STATUS wlan_objmgr_psoc_get_ref(struct wlan_objmgr_psoc *psoc, +void wlan_objmgr_psoc_get_ref(struct wlan_objmgr_psoc *psoc, wlan_objmgr_ref_dbgid id) { - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (psoc == NULL) { - obj_mgr_err("psoc is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("psoc obj is NULL for id:%d", id); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } /* Increment ref count */ qdf_atomic_inc(&psoc->soc_objmgr.ref_cnt); qdf_atomic_inc(&psoc->soc_objmgr.ref_id_dbg[id]); - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_psoc_get_ref); QDF_STATUS wlan_objmgr_psoc_try_get_ref(struct wlan_objmgr_psoc *psoc, wlan_objmgr_ref_dbgid id) { - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } if (psoc == NULL) { - obj_mgr_err("psoc is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("psoc obj is NULL for id:%d", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } @@ -1707,8 +1698,7 @@ QDF_STATUS wlan_objmgr_psoc_try_get_ref(struct wlan_objmgr_psoc *psoc, wlan_psoc_obj_unlock(psoc); if (psoc->soc_objmgr.print_cnt++ <= WLAN_OBJMGR_RATELIMIT_THRESH) - obj_mgr_err("[Ref id: %s] psoc is in L-Del state", - string_from_dbgid(id)); + obj_mgr_err("[Ref id: %d] psoc is in L-Del state", id); return QDF_STATUS_E_RESOURCES; } @@ -1721,22 +1711,17 @@ QDF_STATUS wlan_objmgr_psoc_try_get_ref(struct wlan_objmgr_psoc *psoc, } EXPORT_SYMBOL(wlan_objmgr_psoc_try_get_ref); -QDF_STATUS wlan_objmgr_psoc_release_ref(struct wlan_objmgr_psoc *psoc, +void wlan_objmgr_psoc_release_ref(struct wlan_objmgr_psoc *psoc, wlan_objmgr_ref_dbgid id) { - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } if (psoc == NULL) { - obj_mgr_err("psoc is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("psoc obj is NULLi for id:%d", id); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } if (!qdf_atomic_read(&psoc->soc_objmgr.ref_id_dbg[id])) { - obj_mgr_err("psoc ref cnt was not taken by %s", - string_from_dbgid(id)); + obj_mgr_err("psoc ref cnt was not taken by %d", id); wlan_objmgr_print_ref_ids(psoc->soc_objmgr.ref_id_dbg); WLAN_OBJMGR_BUG(0); } @@ -1744,6 +1729,7 @@ QDF_STATUS wlan_objmgr_psoc_release_ref(struct wlan_objmgr_psoc *psoc, if (!qdf_atomic_read(&psoc->soc_objmgr.ref_cnt)) { obj_mgr_err("psoc ref cnt is 0"); WLAN_OBJMGR_BUG(0); + return; } qdf_atomic_dec(&psoc->soc_objmgr.ref_id_dbg[id]); @@ -1751,7 +1737,7 @@ QDF_STATUS wlan_objmgr_psoc_release_ref(struct wlan_objmgr_psoc *psoc, if (qdf_atomic_dec_and_test(&psoc->soc_objmgr.ref_cnt)) wlan_objmgr_psoc_obj_destroy(psoc); - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_psoc_release_ref); @@ -1806,21 +1792,17 @@ QDF_STATUS wlan_objmgr_print_ref_all_objects_per_psoc( wlan_objmgr_iterate_obj_list_all(psoc, WLAN_PEER_OP, wlan_objmgr_psoc_peer_ref_print, NULL, 1, WLAN_OBJMGR_ID); - obj_mgr_info("----------------------------------"); obj_mgr_info("Ref counts of VDEV"); wlan_objmgr_iterate_obj_list_all(psoc, WLAN_VDEV_OP, wlan_objmgr_psoc_vdev_ref_print, NULL, 1, WLAN_OBJMGR_ID); - obj_mgr_info("----------------------------------"); obj_mgr_info("Ref counts of PDEV"); wlan_objmgr_iterate_obj_list_all(psoc, WLAN_PDEV_OP, wlan_objmgr_psoc_pdev_ref_print, NULL, 1, WLAN_OBJMGR_ID); - obj_mgr_info("----------------------------------"); - obj_mgr_info("Ref counts of PSOC"); + obj_mgr_info(" Ref counts of PSOC"); wlan_objmgr_print_ref_ids(psoc->soc_objmgr.ref_id_dbg); - obj_mgr_info("----------------------------------"); return QDF_STATUS_SUCCESS; } diff --git a/umac/cmn_services/obj_mgr/src/wlan_objmgr_vdev_obj.c b/umac/cmn_services/obj_mgr/src/wlan_objmgr_vdev_obj.c index fa2ea775746e..e14205a36cf8 100644 --- a/umac/cmn_services/obj_mgr/src/wlan_objmgr_vdev_obj.c +++ b/umac/cmn_services/obj_mgr/src/wlan_objmgr_vdev_obj.c @@ -82,8 +82,8 @@ static QDF_STATUS wlan_objmgr_vdev_obj_free(struct wlan_objmgr_vdev *vdev) /* if PDEV is NULL, return */ pdev = wlan_vdev_get_pdev(vdev); if (pdev == NULL) { - obj_mgr_err("pdev is NULL for vdev[%d]", - wlan_vdev_get_id(vdev)); + obj_mgr_err("pdev is NULL for vdev-id: %d", + vdev->vdev_objmgr.vdev_id); return QDF_STATUS_E_FAILURE; } @@ -124,8 +124,8 @@ struct wlan_objmgr_vdev *wlan_objmgr_vdev_obj_create( psoc = wlan_pdev_get_psoc(pdev); /* PSOC is NULL */ if (psoc == NULL) { - obj_mgr_err("psoc is NULL for pdev[%d]", - wlan_objmgr_pdev_get_pdev_id(pdev)); + obj_mgr_err("psoc is NULL for pdev-id:%d", + pdev->pdev_objmgr.wlan_pdev_id); return NULL; } /* Allocate vdev object memory */ @@ -137,7 +137,8 @@ struct wlan_objmgr_vdev *wlan_objmgr_vdev_obj_create( /* Attach VDEV to PSOC VDEV's list */ if (wlan_objmgr_psoc_vdev_attach(psoc, vdev) != QDF_STATUS_SUCCESS) { - obj_mgr_err("psoc attach failed for vdev"); + obj_mgr_err("psoc vdev attach failed for vdev-id:%d", + vdev->vdev_objmgr.vdev_id); qdf_mem_free(vdev); return NULL; } @@ -146,8 +147,8 @@ struct wlan_objmgr_vdev *wlan_objmgr_vdev_obj_create( /* Attach vdev to PDEV */ if (wlan_objmgr_pdev_vdev_attach(pdev, vdev) != QDF_STATUS_SUCCESS) { - obj_mgr_err("pdev attach failed for vdev[%d]", - wlan_vdev_get_id(vdev)); + obj_mgr_err("pdev vdev attach failed for vdev-id:%d", + vdev->vdev_objmgr.vdev_id); wlan_objmgr_psoc_vdev_detach(psoc, vdev); qdf_mem_free(vdev); return NULL; @@ -215,9 +216,9 @@ struct wlan_objmgr_vdev *wlan_objmgr_vdev_obj_create( /* Component object failed to be created, clean up the object */ } else if (obj_status == QDF_STATUS_E_FAILURE) { /* Clean up the psoc */ - obj_mgr_err("Component object creation failed for vdev[%d]", - wlan_vdev_get_id(vdev)); wlan_objmgr_vdev_obj_delete(vdev); + obj_mgr_err("VDEV comp objects creation failed for vdev-id:%d", + vdev->vdev_objmgr.vdev_id); return NULL; } return vdev; @@ -230,26 +231,18 @@ static QDF_STATUS wlan_objmgr_vdev_obj_destroy(struct wlan_objmgr_vdev *vdev) wlan_objmgr_vdev_destroy_handler handler; QDF_STATUS obj_status; void *arg; + uint8_t vdev_id; if (vdev == NULL) { obj_mgr_err("vdev is NULL"); return QDF_STATUS_E_FAILURE; } + vdev_id = wlan_vdev_get_id(vdev); + if (vdev->obj_state != WLAN_OBJ_STATE_LOGICALLY_DELETED) { - - struct wlan_objmgr_pdev *pdev; - - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("pdev is NULL for vdev[%d]", - wlan_vdev_get_id(vdev)); - return QDF_STATUS_E_FAILURE; - } - obj_mgr_err( - "Object delete is not invoked for vdev[%d] pdev[%d]", - wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + obj_mgr_err("vdev object delete is not invoked: vdev-id:%d", + wlan_vdev_get_id(vdev)); WLAN_OBJMGR_BUG(0); } @@ -266,18 +259,8 @@ static QDF_STATUS wlan_objmgr_vdev_obj_destroy(struct wlan_objmgr_vdev *vdev) obj_status = wlan_objmgr_vdev_object_status(vdev); if (obj_status == QDF_STATUS_E_FAILURE) { - - struct wlan_objmgr_pdev *pdev; - - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("pdev is null for vdev[%d]", - wlan_vdev_get_id(vdev)); - return QDF_STATUS_E_FAILURE; - } - obj_mgr_err("Object deletion failed for vdev[%d] pdev[%d]", - wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + obj_mgr_err("VDEV object deletion failed: vdev-id: %d", + vdev_id); /* Ideally should not happen */ /* This leads to memleak ??? how to handle */ QDF_BUG(0); @@ -306,18 +289,8 @@ QDF_STATUS wlan_objmgr_vdev_obj_delete(struct wlan_objmgr_vdev *vdev) print_idx = qdf_get_pidx(); if (qdf_print_is_verbose_enabled(print_idx, QDF_MODULE_ID_OBJ_MGR, QDF_TRACE_LEVEL_DEBUG)) { - struct wlan_objmgr_pdev *pdev; - - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("pdev is NULL for vdev[%d]", - wlan_vdev_get_id(vdev)); - return QDF_STATUS_E_FAILURE; - } - - obj_mgr_debug("L-Del vdev[%d] pdev[%d]", - wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + obj_mgr_debug("Logically deleting the vdev(id:%d)", + vdev->vdev_objmgr.vdev_id); wlan_objmgr_print_ref_ids(vdev->vdev_objmgr.ref_id_dbg); } @@ -478,25 +451,19 @@ QDF_STATUS wlan_objmgr_iterate_peerobj_list( qdf_list_t *peer_list = NULL; struct wlan_objmgr_peer *peer = NULL; struct wlan_objmgr_peer *peer_next = NULL; + uint8_t vdev_id; if (vdev == NULL) { obj_mgr_err("VDEV is NULL"); return QDF_STATUS_E_FAILURE; } + wlan_vdev_obj_lock(vdev); + vdev_id = wlan_vdev_get_id(vdev); if (vdev->obj_state == WLAN_OBJ_STATE_LOGICALLY_DELETED) { - struct wlan_objmgr_pdev *pdev; - pdev = wlan_vdev_get_pdev(vdev); - if (!pdev) { - obj_mgr_err("pdev is NULL for vdev[%d]", - wlan_vdev_get_id(vdev)); - return QDF_STATUS_E_FAILURE; - } - - obj_mgr_err("vdev[%d] pdev[%d] is in delete progress", - wlan_vdev_get_id(vdev), - wlan_objmgr_pdev_get_pdev_id(pdev)); + wlan_vdev_obj_unlock(vdev); + obj_mgr_err("VDEV is in delete progress: vdev-id:%d", vdev_id); return QDF_STATUS_E_FAILURE; } wlan_objmgr_vdev_get_ref(vdev, dbg_id); @@ -517,6 +484,7 @@ QDF_STATUS wlan_objmgr_iterate_peerobj_list( } } wlan_objmgr_vdev_release_ref(vdev, dbg_id); + wlan_vdev_obj_unlock(vdev); return QDF_STATUS_SUCCESS; } @@ -745,85 +713,77 @@ void *wlan_objmgr_vdev_get_comp_private_obj( } EXPORT_SYMBOL(wlan_objmgr_vdev_get_comp_private_obj); -QDF_STATUS wlan_objmgr_vdev_get_ref(struct wlan_objmgr_vdev *vdev, +void wlan_objmgr_vdev_get_ref(struct wlan_objmgr_vdev *vdev, wlan_objmgr_ref_dbgid id) { - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } - if (vdev == NULL) { - obj_mgr_err("vdev is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("vdev obj is NULL for id:%d", id); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } /* Increment ref count */ qdf_atomic_inc(&vdev->vdev_objmgr.ref_cnt); qdf_atomic_inc(&vdev->vdev_objmgr.ref_id_dbg[id]); - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_vdev_get_ref); QDF_STATUS wlan_objmgr_vdev_try_get_ref(struct wlan_objmgr_vdev *vdev, wlan_objmgr_ref_dbgid id) { - - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } + uint8_t vdev_id; if (vdev == NULL) { - obj_mgr_err("vdev is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("vdev obj is NULL for id:%d", id); QDF_ASSERT(0); return QDF_STATUS_E_FAILURE; } + wlan_vdev_obj_lock(vdev); + vdev_id = wlan_vdev_get_id(vdev); if (vdev->obj_state == WLAN_OBJ_STATE_LOGICALLY_DELETED) { wlan_vdev_obj_unlock(vdev); if (vdev->vdev_objmgr.print_cnt++ <= WLAN_OBJMGR_RATELIMIT_THRESH) - obj_mgr_err("[Ref id: %s] vdev[%d] is in L-Del state", - string_from_dbgid(id), wlan_vdev_get_id(vdev)); + obj_mgr_err("[Ref id: %d] vdev(%d) is in Log Del", + id, vdev_id); return QDF_STATUS_E_RESOURCES; } /* Increment ref count */ wlan_objmgr_vdev_get_ref(vdev, id); + wlan_vdev_obj_unlock(vdev); return QDF_STATUS_SUCCESS; } EXPORT_SYMBOL(wlan_objmgr_vdev_try_get_ref); -QDF_STATUS wlan_objmgr_vdev_release_ref(struct wlan_objmgr_vdev *vdev, +void wlan_objmgr_vdev_release_ref(struct wlan_objmgr_vdev *vdev, wlan_objmgr_ref_dbgid id) { - - if (id >= WLAN_REF_ID_MAX) { - obj_mgr_err("Component-id %d is not supported", id); - return QDF_STATUS_MAXCOMP_FAIL; - } + uint8_t vdev_id; if (vdev == NULL) { - obj_mgr_err("vdev is NULL for %s", string_from_dbgid(id)); + obj_mgr_err("vdev obj is NULL for id:%d", id); QDF_ASSERT(0); - return QDF_STATUS_E_FAILURE; + return; } + vdev_id = wlan_vdev_get_id(vdev); + if (!qdf_atomic_read(&vdev->vdev_objmgr.ref_id_dbg[id])) { - obj_mgr_err("vdev[%d] ref cnt was not taken by %s", - wlan_vdev_get_id(vdev), - string_from_dbgid(id)); + obj_mgr_err("vdev (id:%d)ref cnt was not taken by %d", + vdev_id, id); wlan_objmgr_print_ref_ids(vdev->vdev_objmgr.ref_id_dbg); WLAN_OBJMGR_BUG(0); } if (!qdf_atomic_read(&vdev->vdev_objmgr.ref_cnt)) { - obj_mgr_err("vdev[%d] ref cnt is 0", wlan_vdev_get_id(vdev)); + obj_mgr_err("vdev ref cnt is 0"); WLAN_OBJMGR_BUG(0); + return; } qdf_atomic_dec(&vdev->vdev_objmgr.ref_id_dbg[id]); @@ -831,7 +791,7 @@ QDF_STATUS wlan_objmgr_vdev_release_ref(struct wlan_objmgr_vdev *vdev, if (qdf_atomic_dec_and_test(&vdev->vdev_objmgr.ref_cnt)) wlan_objmgr_vdev_obj_destroy(vdev); - return QDF_STATUS_SUCCESS; + return; } EXPORT_SYMBOL(wlan_objmgr_vdev_release_ref);