From 7622cd32b0be08f85f4ed0f4b12745bbfe0ad4ca Mon Sep 17 00:00:00 2001 From: Houston Hoffman Date: Thu, 6 Apr 2017 14:17:49 -0700 Subject: [PATCH] qcacmn: Kill bh execution contexts before cleaning up the hif The interrupts are being freed, but the execution contexts are not guaranteed to be stopped. Ensure the execution contexts are stopped to prevent race conditions between the cleanup and normal execution. Change-Id: I77f2e0fb7073dbb3337e1cbbb6ed09295c7ea23e CRs-Fixed: 2030393 --- hif/src/ce/ce_main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hif/src/ce/ce_main.c b/hif/src/ce/ce_main.c index e713f0deaa9e..1da570c82e20 100644 --- a/hif/src/ce/ce_main.c +++ b/hif/src/ce/ce_main.c @@ -2114,7 +2114,7 @@ void hif_ce_stop(struct hif_softc *scn) * before cleaning up any memory, ensure irq & * bottom half contexts will not be re-entered */ - hif_nointrs(scn); + hif_disable_isr(&scn->osc); hif_destroy_oom_work(scn); scn->hif_init_done = false;