qcacmn: Skip recovery if no rso stop rsp from FW
Current issue: During disconnect host sends RSO STOP command to FW and expects a response from FW before continuing disconnect. If roaming is disabled (from supplicant or due to race condition) before sending RSO STOP cmd then FW does not respond to the request and host will assert. Solution: To handle this case after rso timer stop expiry continue with disconnect and clean up the rso state. Change-Id: Iac7b25d881702b87f946fe0ecfba02b1d806f06b CRs-Fixed: 3301394
This commit is contained in:

committed by
Madan Koyyalamudi

parent
95857b39a8
commit
5b4c2d3d0c
@@ -175,10 +175,16 @@ void target_if_vdev_mgr_rsp_timer_cb(void *arg)
|
||||
} else if (qdf_atomic_test_bit(RSO_STOP_RESPONSE_BIT,
|
||||
&vdev_rsp->rsp_status)) {
|
||||
rsp_pos = RSO_STOP_RESPONSE_BIT;
|
||||
recovery_reason = QDF_RSO_STOP_RSP_TIMEOUT;
|
||||
target_if_vdev_mgr_rsp_timer_stop(psoc, vdev_rsp, rsp_pos);
|
||||
target_if_vdev_mgr_handle_recovery(psoc, vdev_id,
|
||||
recovery_reason, rsp_pos);
|
||||
/**
|
||||
* FW did not respond to rso stop cmd, as roaming is
|
||||
* disabled either due to race condition
|
||||
* that happened during previous disconnect OR
|
||||
* supplicant disabled roaming.
|
||||
* To solve this issue, skip recovery and host will
|
||||
* continue disconnect and cleanup rso state.
|
||||
*/
|
||||
mlme_debug("No rsp from FW received , continue with disconnect");
|
||||
target_if_send_rso_stop_failure_rsp(psoc, vdev_id);
|
||||
} else {
|
||||
mlme_err("PSOC_%d VDEV_%d: Unknown error",
|
||||
|
Reference in New Issue
Block a user