summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/hdd/src/wlan_hdd_main.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c
index ca24d456f70a..13c914bd2778 100644
--- a/core/hdd/src/wlan_hdd_main.c
+++ b/core/hdd/src/wlan_hdd_main.c
@@ -5525,7 +5525,7 @@ static void hdd_bus_bw_work_handler(struct work_struct *work)
/* ensure periodic timer should still be running before restarting it */
qdf_spinlock_acquire(&hdd_ctx->bus_bw_timer_lock);
if (hdd_ctx->bus_bw_timer_running)
- qdf_timer_start(&hdd_ctx->bus_bw_timer,
+ qdf_timer_mod(&hdd_ctx->bus_bw_timer,
hdd_ctx->config->busBandwidthComputeInterval);
qdf_spinlock_release(&hdd_ctx->bus_bw_timer_lock);
}
@@ -8972,11 +8972,14 @@ void hdd_stop_bus_bw_compute_timer(hdd_adapter_t *adapter)
bool can_stop = true;
hdd_context_t *hdd_ctx = WLAN_HDD_GET_CTX(adapter);
+ qdf_spinlock_acquire(&hdd_ctx->bus_bw_timer_lock);
if (!hdd_ctx->bus_bw_timer_running) {
+ qdf_spinlock_release(&hdd_ctx->bus_bw_timer_lock);
/* trying to stop timer, when not running is not good */
hdd_info("bus band width compute timer is not running");
return;
}
+ qdf_spinlock_release(&hdd_ctx->bus_bw_timer_lock);
if (cds_concurrent_open_sessions_running()) {
status = hdd_get_front_adapter(hdd_ctx, &adapterNode);