On Wed, 2019-02-06 at 07:59 +0200, Luca Coelho wrote: > From: Johannes Berg <johannes.berg@xxxxxxxxx> > > When we destroy the interface we already hold the wdev->mtx > while calling cfg80211_pmsr_wdev_down(), which assumes this > isn't true and flushes the worker that takes the lock, thus > leading to a deadlock. > > Fix this by refactoring the worker and calling its code in > cfg80211_pmsr_wdev_down() directly. > > We still need to flush the work later to make sure it's not > still running and will crash, but it will not do anything. > > Fixes: 9bb7e0f24e7e ("cfg80211: add peer measurement with FTM > initiator API") > Signed-off-by: Johannes Berg <johannes.berg@xxxxxxxxx> > --- Oops, this came out with the wrong subject, please ignore it. I'll resend with the correct one. -- Luca.