diff options
| author | Poddar, Siddarth <siddpodd@codeaurora.org> | 2017-07-19 15:18:28 +0530 |
|---|---|---|
| committer | snandini <snandini@codeaurora.org> | 2017-08-09 02:46:26 -0700 |
| commit | dc74eb877a5fb3ca838b0730d826946cbfb00f4f (patch) | |
| tree | 3fb2c2743e90a03cbd643f2102b6f2582cbeb364 | |
| parent | c81c2fb48cfd1a0abaca1f4262bc15f020c1a04b (diff) | |
qcacmn: Add missing qdf_spinlock_destroy() to free debug cookie
Add missing qdf_spinlock_destroy() to destroy spin lock debug cookie
for SLUB build. For normal builds, qdf_spinlock_destroy() is a NO-OP
function.
Change-Id: If5a3843a468e460952dc64f0e6b5b1fba05ebbb3
CRs-Fixed: 2078940
| -rw-r--r-- | hif/src/ce/ce_main.c | 12 | ||||
| -rw-r--r-- | qdf/linux/src/qdf_lock.c | 2 | ||||
| -rw-r--r-- | qdf/linux/src/qdf_mc_timer.c | 1 | ||||
| -rw-r--r-- | qdf/linux/src/qdf_mem.c | 1 |
4 files changed, 15 insertions, 1 deletions
diff --git a/hif/src/ce/ce_main.c b/hif/src/ce/ce_main.c index 9af197bfcc52..6aa5d92955cf 100644 --- a/hif/src/ce/ce_main.c +++ b/hif/src/ce/ce_main.c @@ -2083,12 +2083,21 @@ void hif_ce_stop(struct hif_softc *scn) for (pipe_num = 0; pipe_num < scn->ce_count; pipe_num++) { struct HIF_CE_pipe_info *pipe_info; + struct CE_attr attr; + struct CE_handle *ce_diag = hif_state->ce_diag; pipe_info = &hif_state->pipe_info[pipe_num]; if (pipe_info->ce_hdl) { + if (pipe_info->ce_hdl != ce_diag) { + attr = host_ce_config[pipe_num]; + if (attr.src_nentries) + qdf_spinlock_destroy(&pipe_info-> + completion_freeq_lock); + } ce_fini(pipe_info->ce_hdl); pipe_info->ce_hdl = NULL; pipe_info->buf_sz = 0; + qdf_spinlock_destroy(&pipe_info->recv_bufs_needed_lock); } } @@ -2286,7 +2295,10 @@ QDF_STATUS hif_ce_open(struct hif_softc *hif_sc) */ void hif_ce_close(struct hif_softc *hif_sc) { + struct HIF_CE_state *hif_state = HIF_GET_CE_STATE(hif_sc); + hif_clear_rri_on_ddr(hif_sc); + qdf_spinlock_destroy(&hif_state->keep_awake_lock); } /** diff --git a/qdf/linux/src/qdf_lock.c b/qdf/linux/src/qdf_lock.c index aaf68ed2dc07..85168cdb4b7f 100644 --- a/qdf/linux/src/qdf_lock.c +++ b/qdf/linux/src/qdf_lock.c @@ -784,7 +784,7 @@ void qdf_lock_stats_deinit(void) qdf_spinlock_destroy(&qdf_lock_list_spinlock); for (i = 0; i < QDF_LOCK_STATS_LIST_SIZE; i++) { if (!qdf_is_lock_cookie_free(&lock_cookies[i])) - QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_ERROR, + QDF_TRACE(QDF_MODULE_ID_QDF, QDF_TRACE_LEVEL_DEBUG, "%s: lock_not_destroyed, fun: %s, line %d", __func__, lock_cookies[i].u.cookie.func, lock_cookies[i].u.cookie.line); diff --git a/qdf/linux/src/qdf_mc_timer.c b/qdf/linux/src/qdf_mc_timer.c index c6f694a9ee92..1543c4d2ac86 100644 --- a/qdf/linux/src/qdf_mc_timer.c +++ b/qdf/linux/src/qdf_mc_timer.c @@ -194,6 +194,7 @@ void qdf_mc_timer_manager_exit(void) { qdf_timer_clean(); qdf_list_destroy(&qdf_timer_list); + qdf_spinlock_destroy(&qdf_timer_list_lock); } qdf_export_symbol(qdf_mc_timer_manager_exit); #endif diff --git a/qdf/linux/src/qdf_mem.c b/qdf/linux/src/qdf_mem.c index a16947b55fa9..26ffdf6508da 100644 --- a/qdf/linux/src/qdf_mem.c +++ b/qdf/linux/src/qdf_mem.c @@ -931,6 +931,7 @@ static void qdf_mem_debug_exit(void) qdf_net_buf_debug_exit(); qdf_mem_debug_clean(); qdf_list_destroy(&qdf_mem_list); + qdf_spinlock_destroy(&qdf_mem_list_lock); } /** |
