> -----Original Message----- > From: Dmitry Antipov <dmantipov@xxxxxxxxx> > Sent: Tuesday, August 15, 2023 10:28 PM > To: Ping-Ke Shih <pkshih@xxxxxxxxxxx> > Cc: Kalle Valo <kvalo@xxxxxxxxxx>; linux-wireless@xxxxxxxxxxxxxxx; Dmitry Antipov <dmantipov@xxxxxxxxx> > Subject: [PATCH] wifi: rtw88: add missing call to cancel_work_sync() > > Add missing call to 'cancel_work_sync()' in 'rtw_core_stop()'. > > Fixes: 5c831644e1f4 ("rtw88: handle and recover when firmware crash") > Signed-off-by: Dmitry Antipov <dmantipov@xxxxxxxxx> rtwdev->fw_recovery_work is used to restart hardware when firmware reports things get abnormal. The calling flow will be fw_ recovery_work() -> ... -> rtw_enter_ips() -> rtw_core_stop() -> cancel_work_sync(&rtwdev->fw_recovery_work) /* wait for self to finish */ It would be safe to add this cancel_work_sync(&rtwdev->fw_recovery_work) in rtw_core_deinit()? So, NACK. Ping-Ke