From 525d10c802d55dc10b60a8677cb08dea7769fc01 Mon Sep 17 00:00:00 2001 From: Dundi Raviteja Date: Fri, 29 Dec 2023 15:21:27 +0530 Subject: [PATCH] qcacld-3.0: Fix possible spinlock acquire after destroy qdf_conc_list_lock from policy manager is destroyed as part of idle shutdown, later when FW down indication comes it is trying to acquire as part of ucfg_dp_bus_bw_compute_timer_stop. So call ucfg_dp_bus_bw_compute_timer_stop function in hdd_soc_recovery_cleanup after checking driver status. Change-Id: I27164a4b11467aee6c925225fe33d4fdbe0b4082 CRs-Fixed: 3689606 --- core/hdd/src/wlan_hdd_driver_ops.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/hdd/src/wlan_hdd_driver_ops.c b/core/hdd/src/wlan_hdd_driver_ops.c index 3fac407753c1..b4b8c4bf0d33 100644 --- a/core/hdd/src/wlan_hdd_driver_ops.c +++ b/core/hdd/src/wlan_hdd_driver_ops.c @@ -1,6 +1,6 @@ /* * Copyright (c) 2015-2020 The Linux Foundation. All rights reserved. - * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved + * Copyright (c) 2022-2024 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the @@ -959,7 +959,6 @@ static void hdd_soc_recovery_cleanup(void) /* cancel/flush any pending/active idle shutdown work */ hdd_psoc_idle_timer_stop(hdd_ctx); - hdd_bus_bw_compute_timer_stop(hdd_ctx); /* nothing to do if the soc is already unloaded */ if (hdd_ctx->driver_status == DRIVER_MODULES_CLOSED) { @@ -972,6 +971,7 @@ static void hdd_soc_recovery_cleanup(void) return; } + hdd_bus_bw_compute_timer_stop(hdd_ctx); hdd_psoc_shutdown_notify(hdd_ctx); }