Parcourir la source

qcacld-3.0: Do not BUG_ON during peer unmap timeout if FW is down

During peer detach, driver starts a timer to track unmap events
when the sta peer gets deleted. During this duration SSR occurs
and BUG_ON or cds recovery is triggered. This should only happen
in non-recoverable situation, so this scenario should be avoided.

Allow driver to recover from the SSR by checking FW_DOWN bit.

Change-Id: Ieca407e5c9c30f3c4716b7d158a903add46b8bd6
CRs-Fixed: 2078395
Nachiket Kukade il y a 7 ans
Parent
commit
a48fd7791b
1 fichiers modifiés avec 1 ajouts et 1 suppressions
  1. 1 1
      core/dp/txrx/ol_txrx.c

+ 1 - 1
core/dp/txrx/ol_txrx.c

@@ -3433,7 +3433,7 @@ void peer_unmap_timer_handler(void *data)
 		    peer->mac_addr.raw[0], peer->mac_addr.raw[1],
 		    peer->mac_addr.raw[2], peer->mac_addr.raw[3],
 		    peer->mac_addr.raw[4], peer->mac_addr.raw[5]);
-	if (!cds_is_driver_recovering()) {
+	if (!cds_is_driver_recovering() && !cds_is_fw_down()) {
 		qdf_create_work(0, &txrx_pdev->peer_unmap_timer_work,
 				peer_unmap_timer_work_function,
 				NULL);