qcacld-3.0: Enhancements for link switch disconnect

For link switch disconnect do not send the deauth/disassoc frame
OTA and avoid flow pool unmap as to avoid flushing the memory
allocated for the packets sent OTA for which status is not yet
received.

Once the status is received DP flushes them via the
non-transitioning link.

Change-Id: If2ec024f19730f6ebebf0428f912bfa8dbbddea9
CRs-Fixed: 3557779
This commit is contained in:
Vinod Kumar Pirla
2023-05-18 00:12:08 -07:00
committato da Rahul Choudhary
parent b60b772f0d
commit 863127e879
4 ha cambiato i file con 33 aggiunte e 3 eliminazioni

Vedi File

@@ -84,7 +84,9 @@ QDF_STATUS cm_disconnect_start_ind(struct wlan_objmgr_vdev *vdev,
cm_csr_set_ss_none(req->vdev_id);
}
user_disconnect = req->source == CM_OSIF_DISCONNECT ? true : false;
user_disconnect =
(req->source == CM_OSIF_DISCONNECT ||
req->source == CM_MLO_LINK_SWITCH_DISCONNECT) ? true : false;
if (user_disconnect) {
wlan_p2p_cleanup_roc_by_vdev(vdev, false);
wlan_tdls_notify_sta_disconnect(req->vdev_id, false,
@@ -92,7 +94,8 @@ QDF_STATUS cm_disconnect_start_ind(struct wlan_objmgr_vdev *vdev,
}
cm_abort_connect_request_timers(vdev);
if (req->source != CM_MLO_ROAM_INTERNAL_DISCONNECT) {
if (req->source != CM_MLO_ROAM_INTERNAL_DISCONNECT &&
req->source != CM_MLO_LINK_SWITCH_DISCONNECT) {
mlme_debug("Free copied reassoc rsp");
mlo_roam_free_copied_reassoc_rsp(vdev);
}