From: Philipp Hortmann Date: Sun, 24 Sep 2023 19:50:55 +0000 (+0200) Subject: staging: rtl8192e: Remove mutex from rtllib_softmac_free() X-Git-Tag: block-6.7-2023-11-10~27^2~177 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=d17631c44dea13f7cd6bced705b5c8c8c0bf69c1;p=linux-block.git staging: rtl8192e: Remove mutex from rtllib_softmac_free() The following commands use the mutex ieee->wx_mutex: cancel_delayed_work_sync(&ieee->associate_retry_wq) cancel_delayed_work_sync(&ieee->associate_procedure_wq) cancel_work_sync(&ieee->wx_sync_scan_wq) Therefore they cannot be canceled with ieee->wx_mutex locked. As the work functions are executed time shifted during normal operation of the driver, proper locking can only be done inside the functions. Signed-off-by: Philipp Hortmann Link: https://lore.kernel.org/r/a5308876bd8fabcb5f8b25d14dbad2c1f68ce59f.1695582999.git.philipp.g.hortmann@gmail.com Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/rtl8192e/rtllib_softmac.c b/drivers/staging/rtl8192e/rtllib_softmac.c index d3468b646ca8..c874468d075c 100644 --- a/drivers/staging/rtl8192e/rtllib_softmac.c +++ b/drivers/staging/rtl8192e/rtllib_softmac.c @@ -2461,7 +2461,6 @@ int rtllib_softmac_init(struct rtllib_device *ieee) void rtllib_softmac_free(struct rtllib_device *ieee) { - mutex_lock(&ieee->wx_mutex); del_timer_sync(&ieee->associate_timer); cancel_delayed_work_sync(&ieee->associate_retry_wq); @@ -2477,7 +2476,6 @@ void rtllib_softmac_free(struct rtllib_device *ieee) kfree(ieee->dot11d_info); ieee->dot11d_info = NULL; - mutex_unlock(&ieee->wx_mutex); } static inline struct sk_buff *