Ver código fonte

qcacld-3.0: Purge shutdown notifier before modules close

Currently, shutdown notifiers are purged after closing WMA and
PE modules. If there is an SSR in between these modules close
and purging the shutdown notifiers, SSR sequence will try to
access the timers that are already freed in modules close.

To avoid this, purge shutdown notifiers before closing WMA and
PE modules.

Change-Id: I6a192b11d0f99c93c70bd244072bec353327d843
CRs-Fixed: 2745954
Bapiraju Alla 4 anos atrás
pai
commit
6db75ce3c9
1 arquivos alterados com 2 adições e 2 exclusões
  1. 2 2
      core/cds/src/cds_api.c

+ 2 - 2
core/cds/src/cds_api.c

@@ -1308,6 +1308,8 @@ QDF_STATUS cds_close(struct wlan_objmgr_psoc *psoc)
 
 	qdf_flush_work(&gp_cds_context->cds_recovery_work);
 
+	cds_shutdown_notifier_purge();
+
 	qdf_status = wma_wmi_work_close();
 	if (!QDF_IS_STATUS_SUCCESS(qdf_status)) {
 		cds_err("Failed to close wma_wmi_work");
@@ -1341,8 +1343,6 @@ QDF_STATUS cds_close(struct wlan_objmgr_psoc *psoc)
 	ucfg_pmo_psoc_update_dp_handle(psoc, NULL);
 	wlan_psoc_set_dp_handle(psoc, NULL);
 
-	cds_shutdown_notifier_purge();
-
 	if (true == wma_needshutdown()) {
 		cds_err("Failed to shutdown wma");
 	} else {