qcacmn: Avoid if manager and connect ind call after connect scan

After connect scan the cm_connect_start is called again and it
end up calling ifmanager and connect start API again, leading to
thread blocking and assert.

Fix this by calling these indication only on the actual connect
start req and not from scan state.

Change-Id: I86ed7b1b84fcce715b52f8041b3d565dc6d949c8
CRs-Fixed: 2860082
Šī revīzija ir iekļauta:
gaurank kathpalia
2021-01-21 21:59:15 +05:30
revīziju iesūtīja snandini
vecāks 840f5fa192
revīzija b1f56ba00c

Parādīt failu

@@ -1047,11 +1047,17 @@ QDF_STATUS cm_connect_start(struct cnx_mgr *cm_ctx,
goto connect_err;
}
cm_inform_if_mgr_connect_start(cm_ctx->vdev);
status = mlme_cm_connect_start_ind(cm_ctx->vdev, &cm_req->req);
if (QDF_IS_STATUS_ERROR(status)) {
reason = CM_NO_CANDIDATE_FOUND;
goto connect_err;
/*
* Do not initiate the duplicate ifmanager and connect start ind if
* this is called from Scan for ssid
*/
if (!cm_req->scan_id) {
cm_inform_if_mgr_connect_start(cm_ctx->vdev);
status = mlme_cm_connect_start_ind(cm_ctx->vdev, &cm_req->req);
if (QDF_IS_STATUS_ERROR(status)) {
reason = CM_NO_CANDIDATE_FOUND;
goto connect_err;
}
}
status = cm_connect_get_candidates(pdev, cm_ctx, cm_req);