Browse Source

qcacmn: Replacing qdf_print with QDF_TRACE

Replace all object manager qdf_prints with obj_mgr_err/obj_mgr_info
based on QDF_TRACE with the right log levels.

Added additional debug information like
Pdev_id
Vdev id
Peer MAC address

Change-Id: I96d96182176d332b9fbdb202305d29c08ddc0d18
CRs-Fixed: 2026537
Vivek 7 years ago
parent
commit
2c86b213c6

+ 1 - 0
qdf/inc/qdf_types.h

@@ -394,6 +394,7 @@ typedef enum {
 	QDF_MODULE_ID_OFFCHAN_TXRX,
 	QDF_MODULE_ID_SON,
 	QDF_MODULE_ID_SPECTRAL,
+	QDF_MODULE_ID_OBJ_MGR,
 	QDF_MODULE_ID_ANY,
 	QDF_MODULE_ID_MAX,
 } QDF_MODULE_ID;

+ 2 - 0
qdf/linux/src/qdf_trace.c

@@ -1840,6 +1840,7 @@ struct category_name_info g_qdf_category_name[MAX_SUPPORTED_CATEGORY] = {
 	[QDF_MODULE_ID_P2P] = {"P2P"},
 	[QDF_MODULE_ID_OFFCHAN_TXRX] = {"OFFCHAN"},
 	[QDF_MODULE_ID_REGULATORY] = {"REGULATORY"},
+	[QDF_MODULE_ID_OBJ_MGR] = {"OBJMGR"},
 	[QDF_MODULE_ID_ANY] = {"ANY"},
 };
 EXPORT_SYMBOL(g_qdf_category_name);
@@ -2256,6 +2257,7 @@ static void set_default_trace_levels(struct category_info *cinfo)
 		[QDF_MODULE_ID_NAN] = QDF_TRACE_LEVEL_NONE,
 		[QDF_MODULE_ID_P2P] = QDF_TRACE_LEVEL_NONE,
 		[QDF_MODULE_ID_OFFCHAN_TXRX] = QDF_TRACE_LEVEL_NONE,
+		[QDF_MODULE_ID_OBJ_MGR] = QDF_TRACE_LEVEL_INFO,
 		[QDF_MODULE_ID_ANY] = QDF_TRACE_LEVEL_NONE,
 	};
 

+ 24 - 0
umac/cmn_services/obj_mgr/inc/wlan_objmgr_cmn.h

@@ -38,6 +38,28 @@
 #define WLAN_PEER_HASH(addr)   \
 (((const uint8_t *)(addr))[WLAN_MACADDR_LEN - 1] % WLAN_PEER_HASHSIZE)
 
+#define obj_mgr_log(level, args...) \
+		QDF_TRACE(QDF_MODULE_ID_OBJ_MGR, level, ## args)
+
+#define obj_mgr_logfl(level, format, args...) \
+		obj_mgr_log(level, FL(format), ## args)
+
+#define obj_mgr_alert(format, args...) \
+		obj_mgr_logfl(QDF_TRACE_LEVEL_FATAL, format, ## args)
+
+#define obj_mgr_err(format, args...) \
+		obj_mgr_logfl(QDF_TRACE_LEVEL_ERROR, format, ## args)
+
+#define obj_mgr_warn(format, args...) \
+		obj_mgr_logfl(QDF_TRACE_LEVEL_WARN, format, ## args)
+
+#define obj_mgr_info(format, args...) \
+		obj_mgr_logfl(QDF_TRACE_LEVEL_INFO, format, ## args)
+
+#define obj_mgr_debug(format, args...) \
+		obj_mgr_logfl(QDF_TRACE_LEVEL_DEBUG, format, ## args)
+
+
 /**
  * enum WLAN_OBJ_STATE - State of Object
  * @WLAN_OBJ_STATE_CREATED:             All component objects are created
@@ -249,6 +271,8 @@ static inline char *string_from_dbgid(wlan_objmgr_ref_dbgid id)
 					"WLAN_NAN_ID",
 					"WLAN_REGULATORY_SB_ID",
 					"WLAN_REGULATORY_NB_ID",
+					"WLAN_OFFCHAN_TXRX_ID",
+					"WLAN_POLICY_MGR_ID",
 					"WLAN_SON_ID",
 					"WLAN_SPECTRAL_ID",
 					"WLAN_REF_ID_MAX" };

+ 2 - 4
umac/cmn_services/obj_mgr/inc/wlan_objmgr_vdev_obj.h

@@ -762,12 +762,10 @@ static inline uint8_t *wlan_vdev_get_hw_macaddr(struct wlan_objmgr_vdev *vdev)
 	struct wlan_objmgr_pdev *pdev = wlan_vdev_get_pdev(vdev);
 
 	/* This API is invoked with lock acquired, do not add log prints */
-	if (pdev != NULL) {
+	if (pdev != NULL)
 		return wlan_pdev_get_hw_macaddr(pdev);
-	} else {
-		qdf_print("%s:pdev is NULL\n", __func__);
+	else
 		return NULL;
-	}
 }
 
 /**

+ 55 - 81
umac/cmn_services/obj_mgr/src/wlan_objmgr_global_obj.c

@@ -26,7 +26,7 @@
 /* Global object, it is declared globally */
 struct wlan_objmgr_global *g_umac_glb_obj;
 /* Component Name table */
-const char *wlan_umac_component_name[] = {
+const char *wlan_umac_Component_name[] = {
 	"MLME",
 	"SCAN_MGR",
 	"SCAN_CACHE",
@@ -42,7 +42,7 @@ QDF_STATUS wlan_objmgr_global_obj_init(void)
 
 	/* If it is already created, ignore */
 	if (g_umac_glb_obj != NULL) {
-		qdf_print("%s: Global object is already created\n", __func__);
+		obj_mgr_err("Global object is already created");
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -50,8 +50,7 @@ QDF_STATUS wlan_objmgr_global_obj_init(void)
 	umac_global_obj = (struct wlan_objmgr_global *)qdf_mem_malloc(
 				sizeof(*umac_global_obj));
 	if (umac_global_obj == NULL) {
-		qdf_print("%s: Global object alloc failed due to malloc\n",
-			  __func__);
+		obj_mgr_err("Global object alloc failed due to malloc");
 		return QDF_STATUS_E_NOMEM;
 	}
 	/* Store Global object pointer in Global variable */
@@ -67,7 +66,7 @@ QDF_STATUS wlan_objmgr_global_obj_deinit(void)
 {
 	/* If it is already destroyed */
 	if (g_umac_glb_obj == NULL) {
-		qdf_print("%s: Global object is not allocated\n", __func__);
+		obj_mgr_err("Global object is not allocated");
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -76,7 +75,7 @@ QDF_STATUS wlan_objmgr_global_obj_deinit(void)
 		qdf_mem_free(g_umac_glb_obj);
 		g_umac_glb_obj = NULL;
 	} else {
-		qdf_print("PSOCs are leaked can't free global objmgr ctx\n");
+		obj_mgr_err("PSOCs are leaked can't free global objmgr ctx");
 		WLAN_OBJMGR_BUG(0);
 	}
 
@@ -94,7 +93,7 @@ QDF_STATUS wlan_objmgr_register_psoc_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 
@@ -102,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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -122,15 +120,14 @@ QDF_STATUS wlan_objmgr_unregister_psoc_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -149,15 +146,14 @@ QDF_STATUS wlan_objmgr_register_psoc_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -176,15 +172,14 @@ QDF_STATUS wlan_objmgr_unregister_psoc_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -203,15 +198,14 @@ QDF_STATUS wlan_objmgr_register_psoc_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -229,15 +223,14 @@ QDF_STATUS wlan_objmgr_unregister_psoc_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -256,15 +249,14 @@ QDF_STATUS wlan_objmgr_register_pdev_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -283,15 +275,14 @@ QDF_STATUS wlan_objmgr_unregister_pdev_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -310,15 +301,14 @@ QDF_STATUS wlan_objmgr_register_pdev_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -337,15 +327,14 @@ QDF_STATUS wlan_objmgr_unregister_pdev_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for component %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for Component %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -364,15 +353,14 @@ QDF_STATUS wlan_objmgr_register_pdev_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -390,15 +378,14 @@ QDF_STATUS wlan_objmgr_unregister_pdev_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for component %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for Component %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -417,15 +404,14 @@ QDF_STATUS wlan_objmgr_register_vdev_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -443,15 +429,14 @@ QDF_STATUS wlan_objmgr_unregister_vdev_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -469,15 +454,14 @@ QDF_STATUS wlan_objmgr_register_vdev_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -495,15 +479,14 @@ QDF_STATUS wlan_objmgr_unregister_vdev_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -521,15 +504,14 @@ QDF_STATUS wlan_objmgr_register_vdev_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -547,15 +529,14 @@ QDF_STATUS wlan_objmgr_unregister_vdev_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for component %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for Component %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -574,15 +555,14 @@ QDF_STATUS wlan_objmgr_register_peer_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -601,15 +581,14 @@ QDF_STATUS wlan_objmgr_unregister_peer_create_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -627,15 +606,14 @@ QDF_STATUS wlan_objmgr_register_peer_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -653,15 +631,14 @@ QDF_STATUS wlan_objmgr_unregister_peer_destroy_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -679,15 +656,14 @@ QDF_STATUS wlan_objmgr_register_peer_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is already registered\n",
-			  __func__, 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 */
@@ -705,15 +681,14 @@ QDF_STATUS wlan_objmgr_unregister_peer_status_handler(
 {
 	/* If id is not within valid range, return */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component %d is out of range\n", __func__, id);
+		obj_mgr_err("Component %d is out of range", id);
 		return QDF_STATUS_MAXCOMP_FAIL;
 	}
 	qdf_spin_lock_bh(&g_umac_glb_obj->global_lock);
 	/* 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);
-		qdf_print("%s:callback for comp %d is not registered\n",
-			  __func__, id);
+		obj_mgr_err("Callback for comp %d is not registered", id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	/* Reset handlers, and args to NULL */
@@ -789,12 +764,11 @@ void wlan_objmgr_print_ref_ids(qdf_atomic_t *id)
 	uint32_t i;
 	uint32_t pending_ref;
 
-	qdf_print(" Pending references of object\n");
+	obj_mgr_info("Pending references of object");
 	for (i = 0; i < WLAN_REF_ID_MAX; i++) {
 		pending_ref = qdf_atomic_read(&id[i]);
 		if (pending_ref)
-			qdf_print(" %s -- %d\n", string_from_dbgid(i), pending_ref);
+		obj_mgr_info("%s -- %d", string_from_dbgid(i), pending_ref);
 	}
-
 	return;
 }

+ 40 - 23
umac/cmn_services/obj_mgr/src/wlan_objmgr_pdev_obj.c

@@ -66,10 +66,21 @@ static QDF_STATUS wlan_objmgr_pdev_object_status(
 
 static QDF_STATUS wlan_objmgr_pdev_obj_free(struct wlan_objmgr_pdev *pdev)
 {
+
+	uint8_t pdev_id;
+
+	if (pdev == NULL) {
+	obj_mgr_err("pdev obj is NULL");
+	QDF_ASSERT(0);
+	return QDF_STATUS_E_FAILURE;
+	}
+
+	pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
+
 	/* Detach PDEV from PSOC PDEV's list */
 	if (wlan_objmgr_psoc_pdev_detach(pdev->pdev_objmgr.wlan_psoc, pdev) ==
 						QDF_STATUS_E_FAILURE) {
-		qdf_print("%s: PSOC PDEV detach failed\n",  __func__);
+		obj_mgr_err("PSOC PDEV detach failed: pdev-id: %d", pdev_id);
 		return QDF_STATUS_E_FAILURE;
 	}
 	qdf_spinlock_destroy(&pdev->pdev_lock);
@@ -90,19 +101,19 @@ struct wlan_objmgr_pdev *wlan_objmgr_pdev_obj_create(
 	QDF_STATUS obj_status;
 
 	if (psoc == NULL) {
-		qdf_print("%s:psoc is NULL\n", __func__);
+		obj_mgr_err("psoc is NULL");
 		return NULL;
 	}
 	/* Allocate PDEV object's memory */
 	pdev = qdf_mem_malloc(sizeof(*pdev));
 	if (pdev == NULL) {
-		qdf_print("%s:pdev alloc failed\n", __func__);
+		obj_mgr_err("pdev alloc failed");
 		return NULL;
 	}
 	/* Attach PDEV with PSOC */
 	if (wlan_objmgr_psoc_pdev_attach(psoc, pdev)
 				!= QDF_STATUS_SUCCESS) {
-		qdf_print("%s:pdev psoc attach failed\n", __func__);
+		obj_mgr_err("pdev psoc attach failed");
 		qdf_mem_free(pdev);
 		return NULL;
 	}
@@ -150,8 +161,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 */
-		qdf_print("%s: PDEV component objects allocation failed\n",
-			  __func__);
+		obj_mgr_err("PDEV component objects allocation failed");
 		wlan_objmgr_pdev_obj_delete(pdev);
 		return NULL;
 	}
@@ -165,14 +175,17 @@ static QDF_STATUS wlan_objmgr_pdev_obj_destroy(struct wlan_objmgr_pdev *pdev)
 	wlan_objmgr_pdev_destroy_handler handler;
 	QDF_STATUS obj_status;
 	void *arg;
+	uint8_t pdev_id;
 
 	if (pdev == NULL) {
-		qdf_print("%s:pdev is NULL\n", __func__);
+		obj_mgr_err("pdev is NULL");
 		return QDF_STATUS_E_FAILURE;
 	}
 
+	pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
+
 	if (pdev->obj_state != WLAN_OBJ_STATE_LOGICALLY_DELETED) {
-		qdf_print("%s:pdev object delete is not invoked\n", __func__);
+		obj_mgr_err("pdev object delete is not invoked: pdev-id:%d", pdev_id);
 		WLAN_OBJMGR_BUG(0);
 	}
 
@@ -189,8 +202,8 @@ 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) {
-		qdf_print("%s: PDEV component objects destroy failed\n",
-			  __func__);
+		obj_mgr_err("PDEV component objects destroy failed: pdev-id:%d",
+				pdev_id);
 		/* Ideally should not happen */
 		/* This leads to memleak ??? how to handle */
 		QDF_BUG(0);
@@ -209,7 +222,7 @@ static QDF_STATUS wlan_objmgr_pdev_obj_destroy(struct wlan_objmgr_pdev *pdev)
 QDF_STATUS wlan_objmgr_pdev_obj_delete(struct wlan_objmgr_pdev *pdev)
 {
 	if (pdev == NULL) {
-		qdf_print("%s:pdev is NULL\n", __func__);
+		obj_mgr_err("pdev is NULL");
 		return QDF_STATUS_E_FAILURE;
 	}
 	/*
@@ -241,15 +254,13 @@ QDF_STATUS wlan_objmgr_pdev_component_obj_attach(
 
 	/* component id is invalid */
 	if (id >= WLAN_UMAC_MAX_COMPONENTS) {
-		qdf_print("%s: component-id %d is not supported\n",
-			  __func__, 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) {
-		qdf_print("%s: component-%d already have valid pointer\n",
-			  __func__, id);
+		obj_mgr_err("component-%d already have valid pointer", id);
 		wlan_pdev_obj_unlock(pdev);
 		return QDF_STATUS_E_FAILURE;
 	}
@@ -776,7 +787,7 @@ void wlan_objmgr_pdev_get_ref(struct wlan_objmgr_pdev *pdev,
 					wlan_objmgr_ref_dbgid id)
 {
 	if (pdev == NULL) {
-		qdf_print("%s: pdev obj is NULL\n", __func__);
+		obj_mgr_err("pdev obj is NULL");
 		QDF_ASSERT(0);
 		return;
 	}
@@ -790,17 +801,20 @@ EXPORT_SYMBOL(wlan_objmgr_pdev_get_ref);
 QDF_STATUS wlan_objmgr_pdev_try_get_ref(struct wlan_objmgr_pdev *pdev,
 						wlan_objmgr_ref_dbgid id)
 {
+	uint8_t pdev_id;
+
 	if (pdev == NULL) {
-		qdf_print("%s: pdev obj is NULL\n", __func__);
+		obj_mgr_err("pdev obj is NULL");
 		QDF_ASSERT(0);
 		return QDF_STATUS_E_FAILURE;
 	}
 
 	wlan_pdev_obj_lock(pdev);
+	pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
 	if (pdev->obj_state == WLAN_OBJ_STATE_LOGICALLY_DELETED) {
 		wlan_pdev_obj_unlock(pdev);
-		qdf_print("%s: pdev obj is in Deletion Progress state\n",
-			  __func__);
+		obj_mgr_err("pdev obj is in Deletion Progress state: pdev-id: %d",
+			 pdev_id) ;
 		return QDF_STATUS_E_RESOURCES;
 	}
 
@@ -814,21 +828,24 @@ EXPORT_SYMBOL(wlan_objmgr_pdev_try_get_ref);
 void wlan_objmgr_pdev_release_ref(struct wlan_objmgr_pdev *pdev,
 						wlan_objmgr_ref_dbgid id)
 {
+	uint8_t pdev_id;
+
 	if (pdev == NULL) {
-		qdf_print("%s: pdev obj is NULL\n", __func__);
+		obj_mgr_err("pdev obj is NULL");
 		QDF_ASSERT(0);
 		return;
 	}
 
+	pdev_id = wlan_objmgr_pdev_get_pdev_id(pdev);
+
 	if (!qdf_atomic_read(&pdev->pdev_objmgr.ref_id_dbg[id])) {
-		qdf_print("%s: pdev ref cnt was not taken by %d\n",
-			  __func__, 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)) {
-		qdf_print("%s: pdev ref cnt is 0\n", __func__);
+		obj_mgr_err("pdev ref cnt is 0: pdev-id:%d", pdev_id);
 		WLAN_OBJMGR_BUG(0);
 		return;
 	}

+ 77 - 22
umac/cmn_services/obj_mgr/src/wlan_objmgr_peer_obj.c

@@ -69,17 +69,32 @@ static QDF_STATUS wlan_objmgr_peer_obj_free(struct wlan_objmgr_peer *peer)
 {
 	struct wlan_objmgr_psoc *psoc;
 	struct wlan_objmgr_vdev *vdev;
+	uint8_t *macaddr;
+	uint8_t vdev_id;
+
+	if (peer == NULL) {
+		obj_mgr_err("PEER is NULL");
+		return QDF_STATUS_E_FAILURE;
+	}
+
+	macaddr = wlan_peer_get_macaddr(peer);
 
 	vdev = wlan_peer_get_vdev(peer);
 	if (vdev == NULL) {
-		qdf_print("%s: VDEV is NULL\n", __func__);
+		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) {
-		qdf_print("%s: PSOC is NULL\n", __func__);
+		obj_mgr_err("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;
 	}
 
@@ -91,12 +106,17 @@ 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) {
-		qdf_print("%s: Peer VDEV detach failure\n", __func__);
+		obj_mgr_err("Peer(%02x:%02x:%02x:%02x:%02x:%02x) VDEV detach failure \
+			for 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) {
-		qdf_print("%s: Peer PSOC detach failure\n", __func__);
+		obj_mgr_err("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);
@@ -120,19 +140,25 @@ struct wlan_objmgr_peer *wlan_objmgr_peer_obj_create(
 	uint8_t id;
 
 	if (vdev == NULL) {
-		qdf_print("%s: VDEV is NULL\n", __func__);
+		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 NULL;
 	}
 	/* Get psoc, if psoc is NULL, return */
 	psoc = wlan_vdev_get_psoc(vdev);
 	if (psoc == NULL) {
-		qdf_print("%s: PSOC is NULL\n", __func__);
+		obj_mgr_err("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) {
-		qdf_print("%s: Peer allocation failure\n", __func__);
+		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 */
@@ -148,14 +174,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) {
-		qdf_print("%s: Peer PSOC attach failure\n", __func__);
+		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) {
-		qdf_print("%s: Peer VDEV attach failure\n", __func__);
+		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);
@@ -196,8 +228,10 @@ struct wlan_objmgr_peer *wlan_objmgr_peer_obj_create(
 		peer->obj_state = WLAN_OBJ_STATE_PARTIALLY_CREATED;
 	} else if (obj_status == QDF_STATUS_E_FAILURE) {
 		/* Clean up the peer */
-		qdf_print("%s: Peer component object alloc failure\n",
-			  __func__);
+		obj_mgr_err("Peer(%02x:%02x:%02x:%02x:%02x:%02x) \
+				component object alloc failure",
+				macaddr[0], macaddr[1], macaddr[2],
+				macaddr[3], macaddr[4], macaddr[5]);
 		wlan_objmgr_peer_obj_delete(peer);
 		return NULL;
 	}
@@ -210,14 +244,20 @@ static QDF_STATUS wlan_objmgr_peer_obj_destroy(struct wlan_objmgr_peer *peer)
 	wlan_objmgr_peer_destroy_handler handler;
 	QDF_STATUS obj_status;
 	void *arg;
+	uint8_t *macaddr;
 
 	if (peer == NULL) {
-		qdf_print("%s: PEER is NULL\n", __func__);
+		obj_mgr_err("PEER is NULL");
 		return QDF_STATUS_E_FAILURE;
 	}
 
+	macaddr = wlan_peer_get_macaddr(peer);
+
 	if (peer->obj_state != WLAN_OBJ_STATE_LOGICALLY_DELETED) {
-		qdf_print("%s:peer object delete is not invoked\n", __func__);
+		obj_mgr_err("peer(%02x:%02x:%02x:%02x:%02x:%02x) \
+			object delete is not invoked",
+			macaddr[0], macaddr[1], macaddr[2],
+			macaddr[3], macaddr[4], macaddr[5]);
 		WLAN_OBJMGR_BUG(0);
 	}
 
@@ -250,7 +290,7 @@ static QDF_STATUS wlan_objmgr_peer_obj_destroy(struct wlan_objmgr_peer *peer)
 QDF_STATUS wlan_objmgr_peer_obj_delete(struct wlan_objmgr_peer *peer)
 {
 	if (peer == NULL) {
-		qdf_print("%s: PEER is NULL\n", __func__);
+		obj_mgr_err("PEER is NULL");
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -501,7 +541,7 @@ void wlan_objmgr_peer_get_ref(struct wlan_objmgr_peer *peer,
 					wlan_objmgr_ref_dbgid id)
 {
 	if (peer == NULL) {
-		qdf_print("%s: peer obj is NULL\n", __func__);
+		obj_mgr_err("peer obj is NULL for %d", id);
 		QDF_ASSERT(0);
 		return;
 	}
@@ -516,17 +556,23 @@ EXPORT_SYMBOL(wlan_objmgr_peer_get_ref);
 QDF_STATUS wlan_objmgr_peer_try_get_ref(struct wlan_objmgr_peer *peer,
 						 wlan_objmgr_ref_dbgid id)
 {
+
+	uint8_t *macaddr;
+
 	if (peer == NULL) {
-		qdf_print("%s: peer obj is NULL\n", __func__);
+		obj_mgr_err("peer obj is NULL for %d", id);
 		QDF_ASSERT(0);
 		return QDF_STATUS_E_FAILURE;
 	}
 
 	wlan_peer_obj_lock(peer);
+	macaddr = wlan_peer_get_macaddr(peer);
 	if (peer->obj_state == WLAN_OBJ_STATE_LOGICALLY_DELETED) {
 		wlan_peer_obj_unlock(peer);
-		qdf_print("%s: peer obj is in Deletion Progress state\n",
-			  __func__);
+		obj_mgr_err("peer(%02x:%02x:%02x:%02x:%02x:%02x) obj \
+			is in Deletion Progress state",
+			macaddr[0], macaddr[1], macaddr[2],
+				macaddr[3], macaddr[4], macaddr[5]);
 		return QDF_STATUS_E_RESOURCES;
 	}
 
@@ -540,21 +586,30 @@ EXPORT_SYMBOL(wlan_objmgr_peer_try_get_ref);
 void wlan_objmgr_peer_release_ref(struct wlan_objmgr_peer *peer,
 						 wlan_objmgr_ref_dbgid id)
 {
+
+	uint8_t *macaddr;
+
 	if (peer == NULL) {
-		qdf_print("%s: peer obj is NULL\n", __func__);
+		obj_mgr_err("peer obj is NULL for %d", id);
 		QDF_ASSERT(0);
 		return;
 	}
 
+	macaddr = wlan_peer_get_macaddr(peer);
+
 	if (!qdf_atomic_read(&peer->peer_objmgr.ref_id_dbg[id])) {
-		qdf_print("%s: peer ref cnt was not taken by %d\n",
-			  __func__, id);
+		obj_mgr_err("peer(%02x:%02x:%02x:%02x:%02x:%02x) \
+			ref cnt 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)) {
-		qdf_print("%s: peer ref cnt is 0\n", __func__);
+		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;
 	}

+ 33 - 36
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) {
-		qdf_print("%s: PSOC object detach failed\n", __func__);
+		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) {
-		qdf_print("%s: PSOC allocation failed\n", __func__);
+		obj_mgr_err("PSOC allocation failed");
 		return NULL;
 	}
 	qdf_spinlock_create(&psoc->psoc_lock);
@@ -167,8 +167,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 */
-		qdf_print("%s: PSOC component objects allocation failed\n",
-			  __func__);
+		obj_mgr_err("PSOC component objects allocation failed");
 		/* Clean up the psoc */
 		wlan_objmgr_psoc_obj_delete(psoc);
 		return NULL;
@@ -176,7 +175,7 @@ struct wlan_objmgr_psoc *wlan_objmgr_psoc_obj_create(uint32_t phy_version,
 
 	if (wlan_objmgr_psoc_object_attach(psoc) !=
 				QDF_STATUS_SUCCESS) {
-		qdf_print("%s: PSOC object attach failed\n", __func__);
+		obj_mgr_err("PSOC object attach failed");
 		wlan_objmgr_psoc_obj_delete(psoc);
 		return NULL;
 	}
@@ -193,12 +192,12 @@ static QDF_STATUS wlan_objmgr_psoc_obj_destroy(struct wlan_objmgr_psoc *psoc)
 	void *arg;
 
 	if (psoc == NULL) {
-		qdf_print("%s:psoc is NULL\n", __func__);
+		obj_mgr_err("psoc is NULL");
 		return QDF_STATUS_E_FAILURE;
 	}
 
 	if (psoc->obj_state != WLAN_OBJ_STATE_LOGICALLY_DELETED) {
-		qdf_print("%s:psoc object delete is not invoked\n", __func__);
+		obj_mgr_err("psoc object delete is not invoked");
 		WLAN_OBJMGR_BUG(0);
 	}
 
@@ -215,7 +214,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) {
-		qdf_print("%s: PSOC component object free failed\n", __func__);
+		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.
@@ -237,7 +236,7 @@ static QDF_STATUS wlan_objmgr_psoc_obj_destroy(struct wlan_objmgr_psoc *psoc)
 QDF_STATUS wlan_objmgr_psoc_obj_delete(struct wlan_objmgr_psoc *psoc)
 {
 	if (psoc == NULL) {
-		qdf_print("%s:psoc is NULL\n", __func__);
+		obj_mgr_err("psoc is NULL");
 		return QDF_STATUS_E_FAILURE;
 	}
 	/*
@@ -1353,7 +1352,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);
-		qdf_print("%s: Failed to detach peer\n", __func__);
+		obj_mgr_err("Failed to detach peer");
 		return QDF_STATUS_E_FAILURE;
 	}
 	qdf_spin_unlock_bh(&peer_list->peer_list_lock);
@@ -1622,7 +1621,7 @@ void wlan_objmgr_psoc_get_ref(struct wlan_objmgr_psoc *psoc,
 						wlan_objmgr_ref_dbgid id)
 {
 	if (psoc == NULL) {
-		qdf_print("%s: psoc obj is NULL\n", __func__);
+		obj_mgr_err("psoc obj is NULL for id:%d", id);
 		QDF_ASSERT(0);
 		return;
 	}
@@ -1637,7 +1636,7 @@ QDF_STATUS wlan_objmgr_psoc_try_get_ref(struct wlan_objmgr_psoc *psoc,
 						wlan_objmgr_ref_dbgid id)
 {
 	if (psoc == NULL) {
-		qdf_print("%s: psoc obj is NULL\n", __func__);
+		obj_mgr_err("psoc obj is NULL for id:%d", id);
 		QDF_ASSERT(0);
 		return QDF_STATUS_E_FAILURE;
 	}
@@ -1645,8 +1644,7 @@ QDF_STATUS wlan_objmgr_psoc_try_get_ref(struct wlan_objmgr_psoc *psoc,
 	wlan_psoc_obj_lock(psoc);
 	if (psoc->obj_state == WLAN_OBJ_STATE_LOGICALLY_DELETED) {
 		wlan_psoc_obj_unlock(psoc);
-		qdf_print("%s: psoc obj is in Deletion Progress staet\n",
-			  __func__);
+		obj_mgr_err("Called by %d, psoc obj is in Deletion Progress state", id);
 		return QDF_STATUS_E_RESOURCES;
 	}
 
@@ -1662,20 +1660,19 @@ void wlan_objmgr_psoc_release_ref(struct wlan_objmgr_psoc *psoc,
 						wlan_objmgr_ref_dbgid id)
 {
 	if (psoc == NULL) {
-		qdf_print("%s: psoc obj is NULL\n", __func__);
+		obj_mgr_err("psoc obj is NULLi for id:%d", id);
 		QDF_ASSERT(0);
 		return;
 	}
 
 	if (!qdf_atomic_read(&psoc->soc_objmgr.ref_id_dbg[id])) {
-		qdf_print("%s: psoc ref cnt was not taken by %d\n",
-			  __func__, 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);
 	}
 
 	if (!qdf_atomic_read(&psoc->soc_objmgr.ref_cnt)) {
-		qdf_print("%s: psoc ref cnt is 0\n", __func__);
+		obj_mgr_err("psoc ref cnt is 0");
 		WLAN_OBJMGR_BUG(0);
 		return;
 	}
@@ -1699,7 +1696,7 @@ static void wlan_objmgr_psoc_peer_ref_print(struct wlan_objmgr_psoc *psoc,
 	macaddr = wlan_peer_get_macaddr(peer);
 	wlan_peer_obj_unlock(peer);
 
-	qdf_print(" Peer MAC is %02x:%02x:%02x:%02x:%02x:%02x\n",
+	obj_mgr_info("Peer MAC is %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);
@@ -1714,7 +1711,7 @@ static void wlan_objmgr_psoc_vdev_ref_print(struct wlan_objmgr_psoc *psoc,
 	wlan_vdev_obj_lock(vdev);
 	id = wlan_vdev_get_id(vdev);
 	wlan_vdev_obj_unlock(vdev);
-	qdf_print(" Vdev ID is %d\n", id);
+	obj_mgr_info("Vdev ID is %d", id);
 
 	wlan_objmgr_print_ref_ids(vdev->vdev_objmgr.ref_id_dbg);
 }
@@ -1726,9 +1723,9 @@ static void wlan_objmgr_psoc_pdev_ref_print(struct wlan_objmgr_psoc *psoc,
 	uint8_t id;
 
 	wlan_pdev_obj_lock(pdev);
-	id = pdev->pdev_objmgr.wlan_pdev_id;
+	id = wlan_objmgr_pdev_get_pdev_id(pdev);
 	wlan_pdev_obj_unlock(pdev);
-	qdf_print(" pdev ID is %d\n", id);
+	obj_mgr_info("pdev ID is %d", id);
 
 	wlan_objmgr_print_ref_ids(pdev->pdev_objmgr.ref_id_dbg);
 }
@@ -1736,20 +1733,20 @@ static void wlan_objmgr_psoc_pdev_ref_print(struct wlan_objmgr_psoc *psoc,
 QDF_STATUS wlan_objmgr_print_ref_all_objects_per_psoc(
 		struct wlan_objmgr_psoc *psoc)
 {
-	qdf_print(" Ref counts of PEER\n");
-	wlan_objmgr_iterate_obj_list_all(psoc, WLAN_PEER_OP,
-				     wlan_objmgr_psoc_peer_ref_print, NULL, 1,
-				     WLAN_OBJMGR_ID);
-	qdf_print(" Ref counts of VDEV\n");
-	wlan_objmgr_iterate_obj_list_all(psoc, WLAN_VDEV_OP,
-				     wlan_objmgr_psoc_vdev_ref_print, NULL, 1,
-				     WLAN_OBJMGR_ID);
-	qdf_print(" Ref counts of PDEV\n");
-	wlan_objmgr_iterate_obj_list_all(psoc, WLAN_PDEV_OP,
-				     wlan_objmgr_psoc_pdev_ref_print, NULL, 1,
-				     WLAN_OBJMGR_ID);
+	obj_mgr_info("Ref counts of PEER");
+	wlan_objmgr_iterate_obj_list(psoc, WLAN_PEER_OP,
+				wlan_objmgr_psoc_peer_ref_print, NULL, 1,
+				WLAN_OBJMGR_ID);
+	obj_mgr_info("Ref counts of VDEV");
+	wlan_objmgr_iterate_obj_list(psoc, WLAN_VDEV_OP,
+				wlan_objmgr_psoc_vdev_ref_print, NULL, 1,
+				WLAN_OBJMGR_ID);
+	obj_mgr_info("Ref counts of PDEV");
+	wlan_objmgr_iterate_obj_list(psoc, WLAN_PDEV_OP,
+				wlan_objmgr_psoc_pdev_ref_print, NULL, 1,
+				WLAN_OBJMGR_ID);
 
-	qdf_print(" Ref counts of PSOC\n");
+	obj_mgr_info(" Ref counts of PSOC");
 	wlan_objmgr_print_ref_ids(psoc->soc_objmgr.ref_id_dbg);
 
 	return QDF_STATUS_SUCCESS;
@@ -1760,7 +1757,7 @@ QDF_STATUS wlan_objmgr_psoc_set_user_config(struct wlan_objmgr_psoc *psoc,
 		struct wlan_objmgr_psoc_user_config *user_config_data)
 {
 	if (user_config_data == NULL) {
-		qdf_print("%s:user_config_data is NULL\n", __func__);
+		obj_mgr_err("user_config_data is NULL");
 		QDF_BUG(0);
 		return QDF_STATUS_E_FAILURE;
 	}

+ 42 - 22
umac/cmn_services/obj_mgr/src/wlan_objmgr_vdev_obj.c

@@ -75,10 +75,15 @@ static QDF_STATUS wlan_objmgr_vdev_obj_free(struct wlan_objmgr_vdev *vdev)
 {
 	struct wlan_objmgr_pdev *pdev;
 
+	if (vdev == NULL) {
+			obj_mgr_err("vdev is NULL");
+			return QDF_STATUS_E_FAILURE;
+	}
 	/* if PDEV is NULL, return */
 	pdev = wlan_vdev_get_pdev(vdev);
 	if (pdev == NULL) {
-		qdf_print("%s:pdev is NULL\n", __func__);
+		obj_mgr_err("pdev is NULL for vdev-id: %d",
+			vdev->vdev_objmgr.vdev_id);
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -113,26 +118,28 @@ struct wlan_objmgr_vdev *wlan_objmgr_vdev_obj_create(
 	QDF_STATUS obj_status;
 
 	if (pdev == NULL) {
-		qdf_print("%s: pdev is NULL\n", __func__);
+		obj_mgr_err("pdev is NULL");
 		return NULL;
 	}
 	psoc = wlan_pdev_get_psoc(pdev);
 	/* PSOC is NULL */
 	if (psoc == NULL) {
-		qdf_print("%s: psoc is NULL\n", __func__);
+		obj_mgr_err("psoc is NULL for pdev-id:%d",
+			pdev->pdev_objmgr.wlan_pdev_id);
 		return NULL;
 	}
 	/* Allocate vdev object memory */
 	vdev = qdf_mem_malloc(sizeof(*vdev));
 	if (vdev == NULL) {
-		qdf_print("%s: Memory allocation failure\n", __func__);
+		obj_mgr_err("Memory allocation failure");
 		return NULL;
 	}
 	/* Attach VDEV to PSOC VDEV's list */
 	if (wlan_objmgr_psoc_vdev_attach(psoc, vdev) !=
 				QDF_STATUS_SUCCESS) {
+		obj_mgr_err("psoc vdev attach failed for vdev-id:%d",
+					vdev->vdev_objmgr.vdev_id);
 		qdf_mem_free(vdev);
-		qdf_print("%s: psoc vdev attach failed\n", __func__);
 		return NULL;
 	}
 	/* Store pdev in vdev */
@@ -140,7 +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) {
-		qdf_print("%s: pdev vdev attach failed\n", __func__);
+		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;
@@ -207,8 +215,8 @@ struct wlan_objmgr_vdev *wlan_objmgr_vdev_obj_create(
 	} else if (obj_status == QDF_STATUS_E_FAILURE) {
 		/* Clean up the psoc */
 		wlan_objmgr_vdev_obj_delete(vdev);
-		qdf_print("%s:VDEV component objects creation failed\n",
-			  __func__);
+		obj_mgr_err("VDEV component objects creation failed for vdev-id:%d",
+			vdev->vdev_objmgr.vdev_id);
 		return NULL;
 	}
 	return vdev;
@@ -221,14 +229,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) {
-		qdf_print("%s:vdev is NULL\n", __func__);
+		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) {
-		qdf_print("%s:vdev object delete is not invoked\n", __func__);
+		obj_mgr_err("vdev object delete is not invoked: vdev-id:%d",
+			wlan_vdev_get_id(vdev));
 		WLAN_OBJMGR_BUG(0);
 	}
 
@@ -245,7 +257,7 @@ 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) {
-		qdf_print("%s: VDEV object deletion failed\n", __func__);
+		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);
@@ -265,7 +277,7 @@ static QDF_STATUS wlan_objmgr_vdev_obj_destroy(struct wlan_objmgr_vdev *vdev)
 QDF_STATUS wlan_objmgr_vdev_obj_delete(struct wlan_objmgr_vdev *vdev)
 {
 	if (vdev == NULL) {
-		qdf_print("%s:vdev is NULL\n", __func__);
+		obj_mgr_err("vdev is NULL");
 		return QDF_STATUS_E_FAILURE;
 	}
 	/*
@@ -424,17 +436,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) {
-		qdf_print("%s: VDEV NULL\n", __func__);
+		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) {
 		wlan_vdev_obj_unlock(vdev);
-		qdf_print("%s: VDEV is in delete progress\n", __func__);
+		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);
@@ -684,7 +698,7 @@ void wlan_objmgr_vdev_get_ref(struct wlan_objmgr_vdev *vdev,
 						wlan_objmgr_ref_dbgid id)
 {
 	if (vdev == NULL) {
-		qdf_print("%s: vdev obj is NULL\n", __func__);
+		obj_mgr_err("vdev obj is NULL for id:%d", id);
 		QDF_ASSERT(0);
 		return;
 	}
@@ -699,17 +713,20 @@ 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)
 {
+	uint8_t vdev_id;
+
 	if (vdev == NULL) {
-		qdf_print("%s: vdev obj is NULL\n", __func__);
+		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);
-		qdf_print("%s: vdev obj is in Deletion Progress state\n",
-			  __func__);
+		obj_mgr_err("called by %d, vdev obj is in Deletion Progress state: \
+				vdev-id:%d", id, vdev_id);
 		return QDF_STATUS_E_RESOURCES;
 	}
 
@@ -724,21 +741,24 @@ EXPORT_SYMBOL(wlan_objmgr_vdev_try_get_ref);
 void wlan_objmgr_vdev_release_ref(struct wlan_objmgr_vdev *vdev,
 						wlan_objmgr_ref_dbgid id)
 {
+	uint8_t vdev_id;
+
 	if (vdev == NULL) {
-		qdf_print("%s: vdev obj is NULL\n", __func__);
+		obj_mgr_err("vdev obj is NULL for id:%d", id);
 		QDF_ASSERT(0);
 		return;
 	}
 
+	vdev_id = wlan_vdev_get_id(vdev);
+
 	if (!qdf_atomic_read(&vdev->vdev_objmgr.ref_id_dbg[id])) {
-		qdf_print("%s: vdev ref cnt was not taken by %d\n",
-			  __func__, 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)) {
-		qdf_print("%s: vdev ref cnt is 0\n", __func__);
+		obj_mgr_err("vdev ref cnt is 0");
 		WLAN_OBJMGR_BUG(0);
 		return;
 	}