Browse Source

qcacmn: Fix logging in connection manager

Add vdev id and cm id in connection manager logs.

Change-Id: I1061f6daeb940167508e18ece006f425fc6bc775
CRs-Fixed: 2787825
gaurank kathpalia 4 years ago
parent
commit
14be947c4e

+ 43 - 23
umac/mlme/connection_mgr/core/src/wlan_cm_connect.c

@@ -146,7 +146,8 @@ cm_ser_connect_cb(struct wlan_serialization_command *cmd,
 		/* command removed from pending list. */
 		break;
 	case WLAN_SER_CB_ACTIVE_CMD_TIMEOUT:
-		mlme_err("Active command timeout cm_id %d", cmd->cmd_id);
+		mlme_err(CM_PREFIX_LOG "Active command timeout",
+			 wlan_vdev_get_id(cm_ctx->vdev), cmd->cmd_id);
 		QDF_ASSERT(0);
 
 		cm_connect_cmd_timeout(cm_ctx, cmd->cmd_id);
@@ -176,7 +177,8 @@ static QDF_STATUS cm_ser_connect_req(struct wlan_objmgr_pdev *pdev,
 
 	status = wlan_objmgr_vdev_try_get_ref(cm_ctx->vdev, WLAN_MLME_CM_ID);
 	if (QDF_IS_STATUS_ERROR(status)) {
-		mlme_err("unable to get reference");
+		mlme_err(CM_PREFIX_LOG "unable to get reference",
+			 wlan_vdev_get_id(cm_ctx->vdev), cm_req->cm_id);
 		return status;
 	}
 
@@ -198,7 +200,9 @@ static QDF_STATUS cm_ser_connect_req(struct wlan_objmgr_pdev *pdev,
 		/* command moved to active list. Do nothing */
 		break;
 	default:
-		mlme_err("ser cmd status %d", ser_cmd_status);
+		mlme_err(CM_PREFIX_LOG "ser cmd status %d",
+			 wlan_vdev_get_id(cm_ctx->vdev), cm_req->cm_id,
+			 ser_cmd_status);
 		wlan_objmgr_vdev_release_ref(cm_ctx->vdev, WLAN_MLME_CM_ID);
 
 		return QDF_STATUS_E_FAILURE;
@@ -268,7 +272,8 @@ QDF_STATUS cm_handle_hw_mode_change(struct cnx_mgr *cm_ctx, wlan_cm_id *cm_id,
 
 	pdev = wlan_vdev_get_pdev(cm_ctx->vdev);
 	if (!pdev) {
-		mlme_err("Failed to find pdev from vdev");
+		mlme_err(CM_PREFIX_LOG "Failed to find pdev",
+			 wlan_vdev_get_id(cm_ctx->vdev), *cm_id);
 		goto send_failure;
 	}
 
@@ -296,7 +301,7 @@ void cm_hw_mode_change_resp(struct wlan_objmgr_pdev *pdev, uint8_t vdev_id,
 	enum wlan_cm_sm_evt event = WLAN_CM_SM_EV_HW_MODE_SUCCESS;
 	struct cnx_mgr *cm_ctx;
 
-	mlme_debug("vdev %d cm id %d Continue connect after HW mode change, status %d",
+	mlme_debug(CM_PREFIX_LOG "Continue connect after HW mode change, status %d",
 		   vdev_id, cm_id, status);
 
 	vdev = wlan_objmgr_get_vdev_by_id_from_pdev(pdev, vdev_id,
@@ -459,7 +464,9 @@ static QDF_STATUS cm_connect_get_candidates(struct wlan_objmgr_pdev *pdev,
 	candidate_list = wlan_scan_get_result(pdev, filter);
 	if (candidate_list) {
 		num_bss = qdf_list_size(candidate_list);
-		mlme_debug("num_entries found %d", num_bss);
+		mlme_debug(CM_PREFIX_LOG "num_entries found %d",
+			   wlan_vdev_get_id(cm_ctx->vdev), cm_req->cm_id,
+			   num_bss);
 	}
 
 	op_mode = wlan_vdev_mlme_get_opmode(cm_ctx->vdev);
@@ -470,7 +477,9 @@ static QDF_STATUS cm_connect_get_candidates(struct wlan_objmgr_pdev *pdev,
 	if (!candidate_list || !qdf_list_size(candidate_list)) {
 		if (candidate_list)
 			wlan_scan_purge_results(candidate_list);
-		mlme_info("No valid candidate found num_bss %d", num_bss);
+		mlme_info(CM_PREFIX_LOG "no valid candidate found, num_bss %d",
+			  wlan_vdev_get_id(cm_ctx->vdev), cm_req->cm_id,
+			  num_bss);
 		/*
 		 * Do connect scan only of no candidates were found
 		 * if candidates were found and were removed due to invalid
@@ -563,13 +572,15 @@ QDF_STATUS cm_connect_start(struct cnx_mgr *cm_ctx,
 	/* Interface event */
 	pdev = wlan_vdev_get_pdev(cm_ctx->vdev);
 	if (!pdev) {
-		mlme_err("Failed to find pdev from vdev %d", vdev_id);
+		mlme_err(CM_PREFIX_LOG "Failed to find pdev", vdev_id,
+			 cm_req->cm_id);
 		goto connect_err;
 	}
 
 	psoc = wlan_pdev_get_psoc(pdev);
 	if (!psoc) {
-		mlme_err("Failed to find psoc from vdev %d", vdev_id);
+		mlme_err(CM_PREFIX_LOG "Failed to find psoc", vdev_id,
+			 cm_req->cm_id);
 		goto connect_err;
 	}
 
@@ -586,11 +597,12 @@ QDF_STATUS cm_connect_start(struct cnx_mgr *cm_ctx,
 					     vdev_id, cm_req->cm_id);
 	if (QDF_IS_STATUS_ERROR(status) && status != QDF_STATUS_E_ALREADY) {
 		reason = CM_HW_MODE_FAILURE;
-		mlme_err("Vdev %d Failed to set HW mode change", vdev_id);
+		mlme_err(CM_PREFIX_LOG "Failed to set HW mode change",
+			 vdev_id, cm_req->cm_id);
 		goto connect_err;
 	} else if (QDF_IS_STATUS_SUCCESS(status)) {
-		mlme_debug("Vdev %d Connect will continue after HW mode change",
-			   vdev_id);
+		mlme_debug(CM_PREFIX_LOG "Connect will continue after HW mode change",
+			   vdev_id, cm_req->cm_id);
 		return QDF_STATUS_SUCCESS;
 	}
 
@@ -627,9 +639,10 @@ static QDF_STATUS cm_get_valid_candidate(struct cnx_mgr *cm_ctx,
 
 	if (cm_req->connect_req.connect_attempts >=
 	    cm_ctx->max_connect_attempts) {
-		mlme_info("%d attempts tried for the connect req (cm id %d), max %d",
+		mlme_info(CM_PREFIX_LOG "%d attempts tried, max %d",
+			  wlan_vdev_get_id(cm_ctx->vdev), cm_req->cm_id,
 			  cm_req->connect_req.connect_attempts,
-			  cm_req->cm_id, cm_ctx->max_connect_attempts);
+			  cm_ctx->max_connect_attempts);
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -665,7 +678,8 @@ static QDF_STATUS cm_get_valid_candidate(struct cnx_mgr *cm_ctx,
 	 * candidates left for connect now.
 	 */
 	if (!cur_node) {
-		mlme_debug("No more candidates left");
+		mlme_debug(CM_PREFIX_LOG "No more candidates left",
+			   wlan_vdev_get_id(cm_ctx->vdev), cm_req->cm_id);
 		cm_req->connect_req.cur_candidate = NULL;
 		return QDF_STATUS_E_FAILURE;
 	}
@@ -688,7 +702,8 @@ static void cm_create_bss_peer(struct cnx_mgr *cm_ctx,
 		struct wlan_cm_connect_rsp *resp;
 
 		/* In case of failure try with next candidate */
-		mlme_err("peer create request failed %d", status);
+		mlme_err(CM_PREFIX_LOG "peer create request failed %d",
+			 wlan_vdev_get_id(cm_ctx->vdev), req->cm_id, status);
 
 		resp = qdf_mem_malloc(sizeof(*resp));
 		if (!resp)
@@ -720,7 +735,8 @@ cm_send_bss_select_ind(struct cnx_mgr *cm_ctx, struct cm_connect_req *req)
 		return status;
 
 	/* In supported and failure try with next candidate */
-	mlme_err("mlme candidate select indication failed %d", status);
+	mlme_err(CM_PREFIX_LOG "mlme candidate select indication failed %d",
+		 wlan_vdev_get_id(cm_ctx->vdev), req->cm_id, status);
 	resp = qdf_mem_malloc(sizeof(*resp));
 	if (!resp)
 		return QDF_STATUS_E_FAILURE;
@@ -844,7 +860,8 @@ cm_resume_connect_after_peer_create(struct cnx_mgr *cm_ctx, wlan_cm_id *cm_id)
 
 	status = mlme_cm_connect_req(cm_ctx->vdev, &req);
 	if (QDF_IS_STATUS_ERROR(status)) {
-		mlme_err("connect request failed for *cm_id %x", *cm_id);
+		mlme_err(CM_PREFIX_LOG "connect request failed",
+			 wlan_vdev_get_id(cm_ctx->vdev), *cm_id);
 		status = cm_send_connect_start_fail(cm_ctx,
 						    &cm_req->connect_req,
 						    CM_JOIN_FAILED);
@@ -862,7 +879,8 @@ cm_inform_blm_connect_complete(struct wlan_objmgr_vdev *vdev,
 
 	pdev = wlan_vdev_get_pdev(vdev);
 	if (!pdev) {
-		mlme_err("Failed to find pdev from vdev");
+		mlme_err(CM_PREFIX_LOG "Failed to find pdev",
+			 wlan_vdev_get_id(vdev), resp->cm_id);
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -958,8 +976,8 @@ QDF_STATUS cm_connect_rsp(struct wlan_objmgr_vdev *vdev,
 	prefix = CM_ID_GET_PREFIX(cm_id);
 
 	if (prefix != CONNECT_REQ_PREFIX || cm_id != resp->cm_id) {
-		mlme_err("Active req %x is not connect req connect req cm_id %x",
-			 cm_id, resp->cm_id);
+		mlme_err(CM_PREFIX_LOG " Active cm_id 0x%x is different",
+			 wlan_vdev_get_id(cm_ctx->vdev), resp->cm_id, cm_id);
 		qdf_status = QDF_STATUS_E_FAILURE;
 		goto post_err;
 	}
@@ -1015,7 +1033,8 @@ QDF_STATUS cm_bss_select_ind_rsp(struct wlan_objmgr_vdev *vdev,
 	prefix = CM_ID_GET_PREFIX(cm_id);
 
 	if (prefix != CONNECT_REQ_PREFIX) {
-		mlme_err("Active req %x is not connect req", cm_id);
+		mlme_err("vdev %d active req 0x%x is not connect req",
+			 wlan_vdev_get_id(cm_ctx->vdev), cm_id);
 		return QDF_STATUS_E_INVAL;
 	}
 
@@ -1075,7 +1094,8 @@ QDF_STATUS cm_bss_peer_create_rsp(struct wlan_objmgr_vdev *vdev,
 	prefix = CM_ID_GET_PREFIX(cm_id);
 
 	if (prefix != CONNECT_REQ_PREFIX) {
-		mlme_err("Active req %x is not connect req", cm_id);
+		mlme_err("vdev %d active req 0x%x is not connect req",
+			 wlan_vdev_get_id(cm_ctx->vdev), cm_id);
 		mlme_cm_bss_peer_delete_req(vdev);
 		return QDF_STATUS_E_INVAL;
 	}

+ 7 - 3
umac/mlme/connection_mgr/core/src/wlan_cm_disconnect.c

@@ -53,7 +53,8 @@ cm_ser_disconnect_cb(struct wlan_serialization_command *cmd,
 		/* command removed from pending list. */
 		break;
 	case WLAN_SER_CB_ACTIVE_CMD_TIMEOUT:
-		mlme_err("Active command timeout cm_id %d", cmd->cmd_id);
+		mlme_err(CM_PREFIX_LOG "Active command timeout",
+			 wlan_vdev_get_id(vdev), cmd->cmd_id);
 		QDF_ASSERT(0);
 		break;
 	case WLAN_SER_CB_RELEASE_MEM_CMD:
@@ -81,7 +82,8 @@ static QDF_STATUS cm_ser_disconnect_req(struct wlan_objmgr_pdev *pdev,
 
 	status = wlan_objmgr_vdev_try_get_ref(cm_ctx->vdev, WLAN_MLME_CM_ID);
 	if (QDF_IS_STATUS_ERROR(status)) {
-		mlme_err("unable to get reference");
+		mlme_err(CM_PREFIX_LOG "unable to get reference",
+			 wlan_vdev_get_id(cm_ctx->vdev), req->cm_id);
 		return status;
 	}
 
@@ -103,7 +105,9 @@ static QDF_STATUS cm_ser_disconnect_req(struct wlan_objmgr_pdev *pdev,
 		/* command moved to active list. Do nothing */
 		break;
 	default:
-		mlme_err("ser cmd status %d", ser_cmd_status);
+		mlme_err(CM_PREFIX_LOG "ser cmd status %d",
+			 wlan_vdev_get_id(cm_ctx->vdev), req->cm_id,
+			 ser_cmd_status);
 		wlan_objmgr_vdev_release_ref(cm_ctx->vdev, WLAN_MLME_CM_ID);
 
 		return QDF_STATUS_E_FAILURE;

+ 0 - 1
umac/mlme/connection_mgr/core/src/wlan_cm_main.c

@@ -79,7 +79,6 @@ QDF_STATUS wlan_cm_init(struct vdev_mlme_obj *vdev_mlme)
 	vdev_mlme->cnx_mgr_ctx->vdev = vdev_mlme->vdev;
 	status = cm_sm_create(vdev_mlme->cnx_mgr_ctx);
 	if (QDF_IS_STATUS_ERROR(status)) {
-		mlme_err("CM MLME SM allocation failed");
 		qdf_mem_free(vdev_mlme->cnx_mgr_ctx);
 		vdev_mlme->cnx_mgr_ctx = NULL;
 		return QDF_STATUS_E_NOMEM;

+ 2 - 0
umac/mlme/connection_mgr/core/src/wlan_cm_main_api.h

@@ -36,6 +36,8 @@
 
 #define CM_ID_GET_PREFIX(cm_id)     cm_id & 0xFFFF0000
 
+#define CM_PREFIX_LOG "vdev %d cm_id 0x%x: "
+
 /*************** CONNECT APIs ****************/
 
 /**

+ 10 - 5
umac/mlme/connection_mgr/core/src/wlan_cm_sm.c

@@ -27,7 +27,8 @@ void cm_set_state(struct cnx_mgr *cm_ctx, enum wlan_cm_sm_state state)
 	if (state < WLAN_CM_S_MAX)
 		cm_ctx->sm.cm_state = state;
 	else
-		mlme_err("mlme state (%d) is invalid", state);
+		mlme_err("vdev %d mlme state (%d) is invalid",
+			 wlan_vdev_get_id(cm_ctx->vdev), state);
 }
 
 void cm_set_substate(struct cnx_mgr *cm_ctx, enum wlan_cm_sm_state substate)
@@ -35,7 +36,8 @@ void cm_set_substate(struct cnx_mgr *cm_ctx, enum wlan_cm_sm_state substate)
 	if ((substate > WLAN_CM_S_MAX) && (substate < WLAN_CM_SS_MAX))
 		cm_ctx->sm.cm_substate = substate;
 	else
-		mlme_err(" mlme sub state (%d) is invalid", substate);
+		mlme_err("vdev %d mlme sub state (%d) is invalid",
+			 wlan_vdev_get_id(cm_ctx->vdev), substate);
 }
 
 void cm_sm_state_update(struct cnx_mgr *cm_ctx,
@@ -43,7 +45,8 @@ void cm_sm_state_update(struct cnx_mgr *cm_ctx,
 			enum wlan_cm_sm_state substate)
 {
 	if (!cm_ctx) {
-		mlme_err("cm_ctx is NULL");
+		mlme_err("vdev %d cm_ctx is NULL",
+			 wlan_vdev_get_id(cm_ctx->vdev));
 		return;
 	}
 
@@ -848,7 +851,8 @@ QDF_STATUS cm_sm_deliver_event(struct wlan_objmgr_vdev *vdev,
 	struct cnx_mgr *cm_ctx;
 
 	if (op_mode != QDF_STA_MODE && op_mode != QDF_P2P_CLIENT_MODE) {
-		mlme_err("Invalid mode %d", op_mode);
+		mlme_err("vdev %d Invalid mode %d",
+			 wlan_vdev_get_id(cm_ctx->vdev), op_mode);
 		return QDF_STATUS_E_NOSUPPORT;
 	}
 
@@ -889,7 +893,8 @@ QDF_STATUS cm_sm_create(struct cnx_mgr *cm_ctx)
 			    cm_sm_event_names,
 			    QDF_ARRAY_SIZE(cm_sm_event_names));
 	if (!sm) {
-		mlme_err("CM MLME SM allocation failed");
+		mlme_err("vdev %d CM State Machine allocation failed",
+			 wlan_vdev_get_id(cm_ctx->vdev));
 		return QDF_STATUS_E_NOMEM;
 	}
 	cm_ctx->sm.sm_hdl = sm;

+ 15 - 9
umac/mlme/connection_mgr/core/src/wlan_cm_util.c

@@ -58,7 +58,7 @@ struct cnx_mgr *cm_get_cm_ctx_fl(struct wlan_objmgr_vdev *vdev,
 		cm_ctx = vdev_mlme->cnx_mgr_ctx;
 
 	if (!cm_ctx)
-		mlme_nofl_err("%s:%u: cm_ctx NULL vdev %d", func, line,
+		mlme_nofl_err("%s:%u: vdev %d cm_ctx is NULL", func, line,
 			      wlan_vdev_get_id(vdev));
 
 	return cm_ctx;
@@ -139,7 +139,7 @@ bool cm_check_cmid_match_list_head(struct cnx_mgr *cm_ctx, wlan_cm_id *cm_id)
 exit:
 	cm_req_lock_release(cm_ctx);
 	if (!match)
-		mlme_info("head_cm_id %d didn't match the given cm_id %d",
+		mlme_info("head_cm_id 0x%x didn't match the given cm_id 0x%x",
 			  head_cm_id, *cm_id);
 
 	return match;
@@ -174,7 +174,7 @@ bool cm_check_scanid_match_list_head(struct cnx_mgr *cm_ctx,
 exit:
 	cm_req_lock_release(cm_ctx);
 	if (!match)
-		mlme_info("head_scan_id %d didn't match the given scan_id %d prefix %x",
+		mlme_info("head_scan_id 0x%x didn't match the given scan_id 0x%x prefix 0x%x",
 			  head_scan_id, *scan_id, prefix);
 
 	return match;
@@ -202,7 +202,7 @@ struct cm_req *cm_get_req_by_cm_id_fl(struct cnx_mgr *cm_ctx, wlan_cm_id cm_id,
 	}
 	cm_req_lock_release(cm_ctx);
 
-	mlme_nofl_info("%s:%u: cm req not found for cm id %d", func,
+	mlme_nofl_info("%s:%u: cm req not found for cm id 0x%x", func,
 		       line, cm_id);
 
 	return NULL;
@@ -268,7 +268,9 @@ QDF_STATUS cm_add_req_to_list_and_indicate_osif(struct cnx_mgr *cm_ctx,
 	cm_req_lock_acquire(cm_ctx);
 	if (qdf_list_size(&cm_ctx->req_list) >= CM_MAX_REQ) {
 		cm_req_lock_release(cm_ctx);
-		mlme_err("List full size %d", qdf_list_size(&cm_ctx->req_list));
+		mlme_err(CM_PREFIX_LOG "List full size %d",
+			 wlan_vdev_get_id(cm_ctx->vdev), cm_req->cm_id,
+			 qdf_list_size(&cm_ctx->req_list));
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -334,7 +336,8 @@ cm_delete_req_from_list(struct cnx_mgr *cm_ctx, wlan_cm_id cm_id)
 
 	if (!cm_req) {
 		cm_req_lock_release(cm_ctx);
-		mlme_err("cm req id %d not found", cm_id);
+		mlme_err("vdev %d cm req id %d not found",
+			 wlan_vdev_get_id(cm_ctx->vdev), cm_id);
 		return QDF_STATUS_E_FAILURE;
 	}
 
@@ -361,7 +364,8 @@ void cm_remove_cmd(struct cnx_mgr *cm_ctx, wlan_cm_id cm_id)
 
 	psoc = wlan_vdev_get_psoc(cm_ctx->vdev);
 	if (!psoc) {
-		mlme_err("Failed to find psoc from vdev");
+		mlme_err(CM_PREFIX_LOG "Failed to find psoc",
+			 wlan_vdev_get_id(cm_ctx->vdev), cm_id);
 		return;
 	}
 
@@ -408,7 +412,8 @@ void cm_vdev_scan_cancel(struct wlan_objmgr_pdev *pdev,
 	status = wlan_scan_cancel(req);
 	/* In success/failure case wlan_scan_cancel free the req memory */
 	if (QDF_IS_STATUS_ERROR(status))
-		mlme_err("Cancel scan request failed");
+		mlme_err("vdev %d cancel scan request failed",
+			 wlan_vdev_get_id(vdev));
 }
 
 void cm_set_max_connect_attempts(struct wlan_objmgr_vdev *vdev,
@@ -422,7 +427,8 @@ void cm_set_max_connect_attempts(struct wlan_objmgr_vdev *vdev,
 
 	cm_ctx->max_connect_attempts =
 		QDF_MIN(max_connect_attempts, CM_MAX_CONNECT_ATTEMPTS);
-	mlme_debug("max connect attempts set to %d, requested %d",
+	mlme_debug("vdev %d max connect attempts set to %d, requested %d",
+		   wlan_vdev_get_id(vdev),
 		   cm_ctx->max_connect_attempts, max_connect_attempts);
 }