mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-25 22:23:14 -04:00
qcacmn: Fix race while stopping the ce poll timer
Set the timer_inited flag to false bit earlier to stop ce_poll_timeout function from processing CRs-Fixed: 2182979 Change-Id: I91dd257c6beb21e379a4c51e651d835a35ca76ed
This commit is contained in:
parent
3ab3633184
commit
f6d3035ec6
1 changed files with 4 additions and 3 deletions
|
|
@ -1461,9 +1461,11 @@ void ce_fini(struct CE_handle *copyeng)
|
|||
struct hif_softc *scn = CE_state->scn;
|
||||
uint32_t desc_size;
|
||||
|
||||
bool inited = CE_state->timer_inited;
|
||||
CE_state->state = CE_UNUSED;
|
||||
scn->ce_id_to_state[CE_id] = NULL;
|
||||
|
||||
/* Set the flag to false first to stop processing in ce_poll_timeout */
|
||||
CE_state->timer_inited = false;
|
||||
qdf_lro_deinit(CE_state->lro_data);
|
||||
|
||||
if (CE_state->src_ring) {
|
||||
|
|
@ -1503,8 +1505,7 @@ void ce_fini(struct CE_handle *copyeng)
|
|||
qdf_mem_free(CE_state->dest_ring);
|
||||
|
||||
/* epping */
|
||||
if (CE_state->timer_inited) {
|
||||
CE_state->timer_inited = false;
|
||||
if (inited) {
|
||||
qdf_timer_free(&CE_state->poll_timer);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue