From 8ebdc0ccc9e2404644a62b913f12d2ee0b4e476b Mon Sep 17 00:00:00 2001 From: Jianmin Zhu Date: Thu, 20 Jul 2023 22:40:18 +0800 Subject: [PATCH] qcacmn: Avoid mutex in soft irq When handle wmi_mlo_link_disable_request_event in tasklet, mlo mutex is acquired, assert will happen. To fix it, let wmi_mlo_link_disable_request_event be handled in scheduler thread instead of tasklet. Change-Id: I65b84d0b6dc92a6649925d5844657fa44df1fada CRs-Fixed: 3563195 --- target_if/mlo_mgr/src/target_if_mlo_mgr.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/target_if/mlo_mgr/src/target_if_mlo_mgr.c b/target_if/mlo_mgr/src/target_if_mlo_mgr.c index a07040d19b..0331bfc374 100644 --- a/target_if/mlo_mgr/src/target_if_mlo_mgr.c +++ b/target_if/mlo_mgr/src/target_if_mlo_mgr.c @@ -294,10 +294,10 @@ target_if_mlo_register_event_handler(struct wlan_objmgr_psoc *psoc) target_if_mlo_register_vdev_tid_to_link_map_event(wmi_handle); target_if_mlo_register_mlo_link_state_info_event(wmi_handle); - status = wmi_unified_register_event( - wmi_handle, + status = wmi_unified_register_event_handler(wmi_handle, wmi_mlo_link_disable_request_eventid, - target_if_mlo_link_disable_request_event_handler); + target_if_mlo_link_disable_request_event_handler, + WMI_RX_SERIALIZER_CTX); if (QDF_IS_STATUS_ERROR(status)) { target_if_err("Couldn't register handler for link disable request WMI event %d", status);